楼主: 旧城少世
6777 15

sas中,如何对一列数值每隔7个进行求和,代码应该怎么写?最好使用proc sql过程 [推广有奖]

  • 3关注
  • 0粉丝

硕士生

31%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
359 点
帖子
41
精华
0
在线时间
254 小时
注册时间
2014-12-3
最后登录
2017-11-22

楼主
旧城少世 学生认证  发表于 2015-6-1 15:17:42 |AI写论文
5论坛币
从第一个值开始,每隔7个进行求和,代码需要怎么写? 循环语句或者proc sql过程步都可以。。。求大神们指教啊

最佳答案

何必不淡定。 查看完整内容

hope this will help you
关键词:proc sql sql ROC 循环语句 如何 最好

沙发
何必不淡定。 发表于 2015-6-1 15:17:43
  1. data a ;
  2.     do i=1 to 100;
  3.         x=ranuni(0);
  4.         output;
  5.     end;
  6. run;
  7. data b ;
  8.     set a ;
  9.     if mod(i,7) eq 1 then flag++1;
  10. run;
  11. proc means data=b  noprint;
  12.     var x ;
  13.     by flag;
  14.     output out=sum1  sum=sumwant ;
  15. run;
复制代码
hope this will help you

藤椅
sniperhgy 发表于 2015-6-1 16:15:56
楼主你好,请试试我的代码: 里面的wanted_dataset 就是想要的数据集,variable是假设的要求和的列名,mod(MONOTONIC( ), 7) = 1这句话实现了从1开始,每隔7个来计数。
  1. proc sql;
  2.   create table wanted_dataset as
  3.   select sum(variable) as wanted_variable
  4.   from xx
  5.   where mod(MONOTONIC( ), 7) = 1
  6.   ;
  7. quit;
复制代码

板凳
旧城少世 学生认证  发表于 2015-6-1 16:21:42
sniperhgy 发表于 2015-6-1 16:15
楼主你好,请试试我的代码: 里面的wanted_dataset 就是想要的数据集,variable是假设的要求和的列名,mod(M ...
想问一下,where语句的mod里面那个条件是什么意思?

报纸
sniperhgy 发表于 2015-6-1 16:23:40
旧城少世 发表于 2015-6-1 16:21
想问一下,where语句的mod里面那个条件是什么意思?
MOD取余数,也就是用行数整除7之后的余数,既然是1,8,15,22,...那就用取余数的方法来确定好了。

地板
旧城少世 学生认证  发表于 2015-6-1 16:36:51
sniperhgy 发表于 2015-6-1 16:23
MOD取余数,也就是用行数整除7之后的余数,既然是1,8,15,22,...那就用取余数的方法来确定好了。
MONOTONIC( ), 7) = 1这个还是不太明白,能否麻烦亲详细给我说一下,为什么除以7之后余数等于1?刚开始的七个数字对应的序号应该是1到7,接下来的是8到14...... 这个MONOTONIc是什么意思?怎么和序号进行对应的?

7
sniperhgy 发表于 2015-6-1 16:59:11
旧城少世 发表于 2015-6-1 16:36
MONOTONIC( ), 7) = 1这个还是不太明白,能否麻烦亲详细给我说一下,为什么除以7之后余数等于1?刚开始的 ...
建议楼主自行查询一下MONOTONIC函数的用法,还有就是取余数的MOD函数的用法,要不然怎么进步啊?

8
旧城少世 学生认证  发表于 2015-6-1 21:12:59
sniperhgy 发表于 2015-6-1 16:59
建议楼主自行查询一下MONOTONIC函数的用法,还有就是取余数的MOD函数的用法,要不然怎么进步啊?
嗯 我刚才把mod函数都查了一下 不过没有发现monotonic函数 能不能麻烦请稍微给我讲一下,或者你那边有这个介绍的话给我粘贴一下,我也好好学一下

9
何必不淡定。 发表于 2015-6-1 23:37:49
sniperhgy 发表于 2015-6-1 16:15
楼主你好,请试试我的代码: 里面的wanted_dataset 就是想要的数据集,variable是假设的要求和的列名,mod(M ...
学习了, 谢谢

10
何必不淡定。 发表于 2015-6-1 23:52:16
sniperhgy 发表于 2015-6-1 16:15
楼主你好,请试试我的代码: 里面的wanted_dataset 就是想要的数据集,variable是假设的要求和的列名,mod(M ...
不过兄台你的代码似乎有点小问题。你实现的是每隔7个数取一个数,然后用取出来的数求和,似乎与楼主意思不太相符。 不对处请见谅

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-14 07:24