全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
331 2
2015-11-05
重金 888 悬赏 SAS 或 R 语言编程实际问题, 金币不是问题。

具体看这个帖子 https://bbs.pinggu.org/forum.php? ... ;page=1#pid32507186

现在时间有限而且电脑里没有SAS所以只能用 R,还有别的任务要做。

但是如果大牛能给详细点解codes,用SAS做出这个任务的话,我可以用少量数据检测其可行性。 实际数据太大,上千万数据量,觉得SAS应该可以做,但是没有SAS服务器无法运行整个数据。

谢谢支持。
二维码

扫码加我 拉你入群

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

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

全部回复
2015-11-11 14:52:55
顶一顶,,虽然不懂。但是期待大神帮我们版主解决问题。
二维码

扫码加我 拉你入群

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

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

2015-11-13 11:27:43
1. 先按照var6 的四个级别 level 分开
    楼主是要按 var6 的四个level进行分组计算, 还是要分成四个数据集?
如果是后者的话, 可以这样.

data Level_A  Level_B  Level_C  Level_D;
    set test;
        if var6 = "Level A" then output Level_A;
   else if var6 = "Level B" then output Level_B;
   else if var6 = "Level C" then output Level_C;
   else if var6 = "Level D" then output Level_D;
run;

如果SAS的内存不够,可以先分成几个小数据集。然后再分组,再合并。

data subset_1;
    set test (firstobs=1 obs=100);
run;
data subset_2;
    set test(firstobs=101 obs=200);
run;
data subset_3;
    set test(firstobs=201);
run;



2. 按 var6 分组计算的 percent
proc sql;
    select var1, var2, var3, var4, var5, var6,
           sum(case when var5=0 then 1 end)  as count_V5_0,
           sum(case when  var5 ne 0 then 1 end) as count_v5_,
           count(var5) as nv5,
           calculated  count_v5_0 / calculated nv5 as percent_zero,
           calculated  count_v5_ / calculated nv5 as percent_nonzero
    from test
    group by var6;
quit;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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