全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2766 3
2014-04-23
rt,1.现在有两个数据集分别存了两个变量,我想把这两个变量的KDE曲线画在一张图里,但是帮助文档中的例子:
ods graphics on;
proc kde data=bivnormal;   
univar x / plots=(density histogram histdensity);
univar x y / plots=densityoverlay;
run;
ods graphics off;
似乎x y 只能来自一个数据集?我想知道怎么表示可以让x y 来自不同的数据集。
2.关键的问题是,画出来的图像横轴的刻度范围很大,而我想让刻度显示的详细一点,这又该如何操作?
3.能否在一张图中画三条KDE曲线?

感谢!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-4-26 07:08:46
问题1,3: 先将x,y,x连接(concatenate)到一个数据表的一个变量名X下,添加一个变量(cls)表示他们分别来自不同的数据集。然后使用KDE的by语句.
eg:
data _a;
set a(in=a) b(rename=(y=x) in=b) c(rename=(z=x) in=c);
if a then cls="X";
else if b then cls="Y";
else if c then cls="Z";
else "E";
run;
proc sort data=_a; by cls;
proc kde data=_a;
unvar x;
by cls;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-4-26 21:59:03
jeozu 发表于 2014-4-26 07:08
问题1,3: 先将x,y,x连接(concatenate)到一个数据表的一个变量名X下,添加一个变量(cls)表示他们分别来自 ...
管用!多谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-4-26 22:39:22
对于问题2, 可以使用proc kde out=XX, 将结果输出,然后使用proc gplot; plot ;axis stataments中将数轴指数变换的语句。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群