0

有两个数据集,一个一行,另外 100 行。我想将它们水平设置在一起(而不是合并)并将一行复制到所有 100 行。

现在我做了一个循环来复制较小数据集的行,但是它不是很有效并且填满了我的日志。寻找更清洁的方式。

data sample_ds1;
infile datalines dlm=',';
input country $ maternal_2004 maternal_2005;
datalines;
MS,5,0
Mi,3,0
Mu,4,0
My,5,0
Mr,6,0
Mw,7,0
Mj,8,0
;

data sample_ds12temp;
infile datalines dlm=',';
input MEAN;
datalines;
3.5
;

data sample_ds12;
  set sample_ds12temp;
  run;

  do i=1 to 10;
  proc append base=sample_ds12 data=sample_ds12temp; run;
   end;

data together;
set sample_ds1;
set sample_ds1;
run; 
4

1 回答 1

0

如果我理解你的问题是正确的,那么这应该可以解决问题。

data A;
infile datalines dlm=',';
input country $ maternal_2004 maternal_2005;
datalines;
MS,5,0
Mi,3,0
Mu,4,0
My,5,0
Mr,6,0
Mw,7,0
Mj,8,0
;

data B;
infile datalines dlm=',';
input MEAN;
datalines;
3.5
;

data test;
if _n_=1 then set B;
set A;
run;
于 2015-08-12T14:38:24.610 回答