символ в цифру в шаге данных SAS

Я хочу преобразовать некоторую переменную в char с определенной длиной, а некоторые в числовые с некоторой длиной на шаге данных. Как этого добиться?

заранее спасибо

для персонажа он работает нормально.

   Data Clean_data
format
country $30.
Region $30.
Days_on_site (Numeric value)
AOD          (Numeric value)

set raw_data;
run;

person ASH    schedule 18.03.2018    source источник
comment
Покажите, какой код вы пробовали, и какие сообщения журнала вы видите. Знаете ли вы, что означает «число некоторой длины» для программиста SAS? Отличается ли он от числового формата некоторой ширины?   -  person Richard    schedule 18.03.2018
comment
Почему вы используете оператор FORMAT? Формат - это просто инструкции по отображению значений. Вы можете определить, как хранится переменная, используя оператор LENGTH или ATTRIB.   -  person Tom    schedule 18.03.2018


Ответы (1)


Все числовые значения SAS в выполняющемся шаге DATA представляют собой 8-байтовые числа с плавающей запятой IEEE. См. раздел Точность числовых значений в программном обеспечении SAS. используется для хранения числовой переменной в наборе данных, может быть указано от 3 (или 2) до 8 в зависимости от операционной системы и оборудования. Округление может произойти при перемещении значения из набора данных в шаг данных, когда длина ‹ 8.

Числовые переменные SAS также могут иметь связанный формат, который используется, когда значение должно быть отображено (или представлено) для вывода, как правило, для удобочитаемости. Вывод может быть любым: Excel, PDF, RTF, средство просмотра ViewTable, средство просмотра сетки в Enterprise Guide, средство просмотра сетки в SAS Studio и т. д. Эта концепция может совпадать с вашим вопросом "преобразовать некоторые переменная в char".

Существует множество числовых форматов. Основываясь на имени вашей переменной Days_on_site, я бы предположил, что вы хотите отформатировать числовую переменную, содержащую только целочисленные значения. Числовое значение можно отформатировать так, чтобы оно отображалось как ближайшее целое число, используя

format Days_on_site 4.;

Если фактическое значение > 9999, формат будет отображать значение как **** при просмотре.

Одним из часто используемых числовых форматов является ж.д

Из документации:

w указывает ширину поля вывода
d указывает количество цифр справа от десятичной точки в числовом значении. Этот аргумент является необязательным.

person Richard    schedule 18.03.2018