全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
16870 35
2014-03-27
有一列数据y
0 3 4 5 1 6 6 9

请教:如何生成另一个变量Z, 使得Z1=0,Z=yi+yi-1 (从Z2开始)

是否为这样:
>z<-numeric(length(y))
>for (i in 1:length(y)) z[1]=0
>for (i in 2:length(y)) z[i]=y[i-1]+y[i]


请不吝赐教,非常感谢!!

二维码

扫码加我 拉你入群

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

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

全部回复
2014-3-27 21:21:30
sum, cumsum
二维码

扫码加我 拉你入群

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

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

2014-3-27 22:08:04
复制代码
就行了,cumsum是前面所有元素累加,不是\[z_{i}=y_{i}+y_{i-1}\]
二维码

扫码加我 拉你入群

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

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

2014-3-27 22:16:13
danica33 发表于 2014-3-27 22:08
就行了,cumsum是前面所有元素累加,不是
非常感谢详细的回答,这个得出来是一个数呢,还是一列数呢。比如在STATA中,我可以令变量b等于ai+bi-1
这样的出来的b,就是0,a2+a1, a3+a2+a1, a4+a3+a2+a1,等等

R中可以通过cumsum来得到这样的一列数据吗?

二维码

扫码加我 拉你入群

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

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

2014-3-27 22:19:55
winniewang2222 发表于 2014-3-27 22:16
非常感谢详细的回答,这个得出来是一个数呢,还是一列数呢。比如在STATA中,我可以令变量b等于ai+bi-1
这 ...
得到的是一列数,cumsum就是向量a=(a1,...,an),,cumsum(a)得到a1,a1+a2,a1+a2+a3,....a1+...+an
二维码

扫码加我 拉你入群

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

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

2014-3-27 22:26:33
danica33 发表于 2014-3-27 22:19
得到的是一列数,cumsum就是向量a=(a1,...,an),,cumsum(a)得到a1,a1+a2,a1+a2+a3,....a1+...+an
明白了~!非常感谢!!

再请教一个问题,我将dta的数据导入到了R, 用
>data<-read.dta("D:/test.dta")
然后输入data后,显示的是
  a
1 0
2 3
3 4
4 6
...
这样的格式
我尝试对a进行加减乘除,比如a*d
我尝试
>c<-a*d
结果说找不到a
请问我是不是应该吧a转换一下格式还是怎样呢
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

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