Как объединить 2 столбца с разными типами данных в SAS? - PullRequest
0 голосов
/ 29 апреля 2020

Как объединить 2 столбца с разными типами данных в SAS?

Ответы [ 2 ]

0 голосов
/ 29 апреля 2020

Если вы пытаетесь сложить данные с UNION, а исходные столбцы имеют разные типы, один (или более) из исходных столбцов необходимо преобразовать в тип целевого типа столбца.

Пример:

data have_num;
  do x = 1 to 10;
    output;
  end;

data have_char;
  do _n_ = 20 to 30;
    x = put (_n_, 8.-L);
    output;
  end;
run;

proc sql;
  %* use input() to convert;
  create table want_x_num as
  select x from have_num
  union
  select input(x,best12.) as x from have_char
  ;

  * use cats() to convert;
  create table want_x_char as
  select cats(x) from have_num
  union
  select x from have_char
  ;
0 голосов
/ 29 апреля 2020

SAS использует форматы для управления отображением значений в виде текста. Он использует информаторы для управления преобразованием текста в значения. Вы можете использовать функцию PUT () или PUT C или PUTN для преобразования значений (чисел или строк) в строки. Вы можете использовать функцию INPUT () или INPUT C или INPUTN для преобразования строк в значения (числа или строки).

...