2014-10-07 4 views
2

У меня есть таблицы со столбцами смешанных типов данных, то есть:Импорт 2010 Excel файлов с помощью GuessingRows

Column1 
13450 
67/89 
823ad 

Я хочу SAS читать все записи, так что обнаруживает данные перемешивается и так импортирует все это как символьный формат (в противном случае он может определять как числовой и поэтому создает недостающие записи для нечисловых значений). Поэтому мне нужно использовать функцию «GUESSINGROWS» PROC IMPORT.

я был в состоянии сделать это с .xls файлами, так:

PROC IMPORT OUT=importeddata 
      DATAFILE = "C:\User\Example\Excel File.xls" 
      DBMS=XLS REPLACE; 
     SHEET='Input'; 
     GETNAMES=YES; 
     MIXED=YES; 
     GUESSINGROWS=32767; 
RUN; 

Однако, эти файлы теперь сохраняются в виде файлов .xlsm и поэтому мне нужно использовать новую СУБД EXCEL. При этом GUESSINGROWS больше не является действительным заявлением.

Кто-нибудь знает, как я могу использовать оператор GUESSINGROWS при импорте из .xlsm-файла? Или другой способ определить формат входных переменных при импорте из .xlsm?

+0

Используйте метод libref и dbsatype, чтобы указать его конкретно. Какие СУБД вы используете? – Reeza

+0

@ Reese - он означает вариант СУБД в PROC IMPORT. – vasja

+0

Я знаю, я хотел набрать dbsastype, что позволяет явно указывать столбцы в методе lib ref, так как в его вопросе спрашивается, есть ли другой способ. – Reeza

ответ

1

https://communities.sas.com/message/193134#193134

Реакция искусства на 8 января, 2014 является то, что вы ищете, изменить тип СИМВОЛ вместо даты и имя столбца с правильным именем столбца.

+0

Это работает блестяще, если в первых 8 элементах столбца есть запись символа, так как метод libref понимает, что столбец имеет смешанные данные. Однако, если первые 8 записей являются числовыми, тогда SAS ищет только числовые данные в столбце, а затем выдает отсутствующие значения, где есть записи символов. Причина, по которой я говорю 8 записей, заключается в том, что по умолчанию используется SAS для проверки типа данных. - guessingrows сообщает SAS, чтобы посмотреть все записи, прежде чем «решить», какой тип данных он (преодоление проблемы). Есть ли аналогичная функция «угадывания» с СУБД EXCEL? – russellhurdle

Смежные вопросы