Проверка достоверности набора данных SAS - PullRequest
0 голосов
/ 25 декабря 2018

Я хочу проверить набор данных, который имеет 100 переменных и более 100000 записей.Я импортирую данные в виде строки (даже для числовых данных).Я наблюдал, как некоторые переменные усекались в конце.Как проверить каждую переменную, чтобы убедиться, что данные заполнены полностью (не усечены)?

Пример данных:

data dsn;
infile "xyz.txt" dlm= '|' RECFM=V LRECL=2000 PAD MISSOVER;
length
a1 $20.
a2 $100.
a3 $50.
;
input a1 $
a2 $
a3 $
;
run;

Например, строковое значение 1532564.7564, и после импорта я получаю 1532564.756.Итак, мой вопрос в том, что полученное значение усекается.Но когда я изменяю его на числовые данные, я получаю полное значение.Аналогично, Licnum - это символьные данные (например, 12xd456), и они усекаются до последней цифры (отображается как 12xd4).

1 Ответ

0 голосов
/ 25 декабря 2018

Попробуйте эти настройки

  • Увеличьте LRECL
    Все, что находится за 2000-м символьным столбцом, будет обрезано.
  • Увеличьте $ длину переменной, которая будет обрезана.
    Значение 1532564.7564 составляет 12 символов и не помещается в переменную $11.
  • Убедитесь, что все переменные с форматом $<n>. не длиннее <n>
    Если у вас есть attrib Licnum length=$7 format=$5., то при просмотре данных будут видны только первые пять символов.
...