我有一张这种表格的表格
id1|A|
id1| |var1
id1|B|var2
id2|C|
我想计算检索具有所有变量的所有信息的数据:即
id1|B|var2
要执行此任务,我想计算每行中的观察次数,并只取具有完整观察的行:
id|name|age |cntrow
id1| A | |2
id1| |var1|2
id1| B |var2|3
id2| C | |2
任何猜测如何执行此任务?
我有一张这种表格的表格
id1|A|
id1| |var1
id1|B|var2
id2|C|
我想计算检索具有所有变量的所有信息的数据:即
id1|B|var2
要执行此任务,我想计算每行中的观察次数,并只取具有完整观察的行:
id|name|age |cntrow
id1| A | |2
id1| |var1|2
id1| B |var2|3
id2| C | |2
任何猜测如何执行此任务?
您可以使用 CMISS 功能。类似于以下内容:
Data nomissing missing;
Set input_dataset;
if CMISS(of _ALL_)=0 then output nomissing;
if CMISS(of _ALL_)>0 then output missing;
run;
如果这是数字,该n
函数将起作用。由于没有数据,您可以使用 CMISS 找出丢失的数量:
data have;
infile datalines dlm='|';
input
id $ charvar1 $ charvar2 $ numvar;
vars_missing = cmiss(of _all_)-1; *because vars_missing is also missing at this point!;
put _all_;
datalines;
id1|A| |3
id1| |var1|2
id1|B|var2|.
id2|C| |2
;;;;
run;
然后从已知数量的变量中减去它。如果您不知道,您可以创建数组并_CHARACTER_
用于查找。_NUMERIC_
dim()