Может ли кто-нибудь помочь мне написать фрейм данных R в качестве набора данных SAS? - PullRequest
10 голосов
/ 29 марта 2011

В R я использовал функцию write.foreign () из библиотеки foreign для записи фрейма данных в качестве набора данных SAS.

write.foreign(df = test.df, datafile = 'test.sas7bdat', codefile = 'test.txt', package = "SAS")

Файл данных SAS записан, но когда я пытаюсь открыть его в SAS Viewer 9.1 (Windows XP), я получаю следующее сообщение - «Формат файла набора данных SAS не поддерживается».

Примечание: я обычно не знаком с SAS, поэтому, если существует ответ, который был бы известен обычному пользователю SAS, прошу прощения за мое невежество.

Ответы [ 3 ]

9 голосов
/ 30 марта 2011

write.foreign с параметром package="SAS" фактически записывает текстовый файл с разделителями-запятыми, а затем создает файл сценария с инструкциями SAS для его чтения. Вы должны запустить SAS и отправить сценарий, чтобы превратить текстовый файл вНабор данных SAS.Ваш звонок должен выглядеть примерно так:

write.foreign(df=test.df, datafile="test.csv", codefile="test.sas", package="SAS")

Обратите внимание на другой добавочный номер.Кроме того, write.foreign записывает факторные переменные в виде числовых переменных с форматом, управляющим их внешним видом, т. Е. R-определением фактора.Если вам нужно только представление символов, вам придется преобразовать коэффициенты с помощью as.character перед экспортом.

8 голосов
/ 29 марта 2011

Я тоже не большой пользователь SAS, но раньше я использовал write.xport(), и он работал нормально.Я понимаю, что существует два типа файлов SAS: внутренние и файлы XPORT.XPORT более совместимы с различными версиями, архитектурами и т. Д.

0 голосов
/ 13 апреля 2011

Вы можете сделать это легко с SAS: просто проведите тест с SAS / IML (proc iml) или IMLPlus (объектно-ориентированная версия) с SAS / IML Studio.

См. Это: http://support.sas.com/documentation/cdl/en/imlsstat/63827/HTML/default/viewer.htm#imlsstat_statr_sect004.htm

или загрузите SAS / IML Studio бесплатно: http://www.sas.com/apps/demosdownloads/92_SDL_sysdep.jsp?packageID=000721 В этом выпуске SAS / IML Studio предусмотрена возможность взаимодействия с языком R.

...