2013-11-14 4 views
0

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

Ниже приведен пример, в котором SAS удаляет данные, и я не понимаю, почему.

DATA trial; 
X='1264263.336532'; 
Y=INPUT(X,BEST32.); 
PUT Y; 
RUN; 

Y только 1264263.3365, а не X. Я не уверен, почему это происходит.

ответ

3

SAS отображает номер в стандартном BEST12. формат. Попробуйте PUT Y best32 .; вместо этого

+0

Это сделало. Я также заметил, что SAS хранит неправильное значение для Y в самом наборе данных или просто отображает best12. версия? Я сделал формат y best32. и y отображает точно так же, как x в наборе данных, когда я это делаю. Лучше всего12. версия y влияет на математические вычисления. Скажем, если я делаю z = x как best32. и включить формат z best32. и сравните его с y без оператора формата. – user27008

+1

Функция INPUT применяет информатив, поэтому, если вы не укажете формат отдельно, то номер будет отображаться с использованием наилучшего по умолчанию12. – Longfish

+0

Значит ли это, что z и y могут быть равными, хотя оба они не показывают одинаковое отображаемое значение? Я просто пытаюсь понять, влияет ли формат чисел на математические вычисления. – user27008

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