全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1211 4
2012-07-23
在做循环的时候,想算标准差,选取sd()
但是for(i in 1:3){
sigma[i]=sd(sample[i:i+3])}
算出来的结果都是NA,如果是mean()的话却可以,请问问题出在哪里 谢谢!

二维码

扫码加我 拉你入群

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

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

全部回复
2012-7-30 21:31:34
Change the last line of your code to:
复制代码
In R the priority of colon operator (:) is higher than plus (+), thus the result of the expression sd(sample[i:i + 3]) will always be NA.
二维码

扫码加我 拉你入群

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

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

2012-8-1 16:46:04
例如:i=1,i:i+3其实是(1:1)+3=3,所以上面的代码应该改为:
for(i in 1:3){
sigma[i]=sd(sample[i:(i+3)])}
二维码

扫码加我 拉你入群

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

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

2012-8-19 19:59:54
zhangyangsmith 发表于 2012-7-30 21:31
Change the last line of your code to:In R the priority of colon operator (:) is higher than plus (+) ...
谢谢!
二维码

扫码加我 拉你入群

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

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

2012-8-19 20:00:25
chenyn68 发表于 2012-8-1 16:46
例如:i=1,i:i+3其实是(1:1)+3=3,所以上面的代码应该改为:
for(i in 1:3){
sigma=sd(sample)}
灰常感谢~
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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