Как я могу преобразовать файлы данных SAS в нечто простое, например, данные CSV?

26965
MikeN

На этом сайте CDC есть файлы с правительственными данными, но они в странном формате SAS.

Как я могу преобразовать их в XML / CSV, то есть что-то гораздо более простое, что может быть прочитано скриптами и т. Д.?

5
Является ли http://ftp.cdc.gov/pub/health_statistics/NCHS/Datasets/NSFG/sas/1995FemPregInput.sas примером файлов SAS, которые вы просматриваете? CDC, кажется, использует это расширение как для кода, так и для данных. ayrnieu 14 лет назад 1
http://search.cpan.org/~mlf/SAS-Parser-0.93/lib/SAS/Parser.pm занимается ими ayrnieu 14 лет назад 2
SAS - это интегрированный инструмент программирования / управления данными. Если специально не сделано иначе, код и данные хранятся в одном файле / типе. DaveE 14 лет назад 1

5 ответов на вопрос

5
Skylar Saveland

Вы можете сделать это с помощью R-cran, если у вас есть xptфайлы SAS . Используйте foreignи hmiscпакеты.

xpt = sasxport.get("xpt/DEMO.xpt") write.csv(xpt, file="demo.csv") 
Что такое R-кран? Может быть, вы могли бы добавить ссылку на это? Journeyman Geek 11 лет назад 1
R-проект с открытым исходным кодом статистического программного обеспечения. Добавил ссылку. Skylar Saveland 11 лет назад 0
R 3.2.3 Windows. Я сделал следующее: `library ('foreign')` `data = read.xport (" C: \\ Users \\ x \\ Downloads \\ aaa.XPT ")` `write.csv (data, file =" C: \\ Пользователи \\ х \\ Downloads \ aaa.csv) ` thinkanotherone 8 лет назад 0
4
simonn

SAS Institute (компания, которая производит SAS) создает программу просмотра для наборов данных SAS .

Обратите внимание, что программные файлы SAS обычно имеют расширение .sas, тогда как сами файлы данных обычно имеют расширение .sas7bdat.

Эта программа выполняет преобразование? Как это отвечает на вопрос? ftrotter 10 лет назад 0
Кажется, он может экспортировать в CSV http://scriptogr.am/richie/post/convert-sas7bdat-to-csv radek 9 лет назад 1
3
eric.a.booth

StatTransfer преобразует файлы SAS в различные форматы и включает в себя параметры фильтрации переменных или наблюдений, настройки разделителя и изменения форматов хранения переменных во время передачи.

AM также будет скрывать данные, но он менее мощный / гибкий. AM бесплатна и написана для Windows.

2
Chris Long

Вы можете извлечь данные из файлов .SAS7BDAT, используя dsread из Oceanview Consultancy, см.

http://www.oview.co.uk/dsread

Он обрабатывает файлы с большинства платформ, хотя для некоторых платформ может потребоваться регистрация. Это быстрая и простая в использовании программа для командной строки Windows, которая также работает под Wine на Linux. Установка не требуется, просто запустите .exe.

Я понимаю, что это старый вопрос, но он обнаруживается в соответствующих веб-поисках, поэтому включение этого ответа поможет всем, кто хочет извлечь данные из проприетарного формата SAS7BDAT.

Отказ от ответственности: я разработчик dsread.

0
Mike Selik

Если вы говорите о файлах SAS XPT, вы можете использовать xportмодуль Python.

import xport  with open('example.xpt', 'rb') as f: for row in xport.Reader(f): print row