作者robin112 (Robin)
看板Statistics
标题[程式] R 利用for做变数宣告
时间Fri Oct 18 03:15:24 2013
[软体程式类别]:R
请填入软体程式类别 例如SAS、SPSS、R、EVIEWS...等
[程式问题]:资料处理
资料处理、回归、叙述统计、logistic、probit...等
[软体熟悉度]:
低(1~3个月)
[问题叙述]:
想使用for做变数的宣告
[程式范例]:
有一笔年份2000~2009年的data
想依年份将data切割成下面这样
y0=x[year == "2000" , ]
y1=x[year == "2001" , ]
...
y9=x[year == "2009" , ]
想说是否可以用for回圈将y0~y9宣告出来
以下是我写的程式:
z=paste("y",0:9,sep="")
ye=c(2000:2009)
for ( i in 0:9 )
{
z[[i]]=x[year == "ye[i+1]" , ]
}
会跑出:
错误在z[[i + 1]] = x[year == "ye[i+1]", ] :
用来替换的元素比所要替换的值多
小弟有点菜,希望各位指教,谢谢!
-----------------------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.85.231
※ 编辑: robin112 来自: 61.224.85.231 (10/18 03:16)
1F:推 ching0629:先用 z=list(NULL) ,等同於宣告z是一个列表 10/18 08:11
2F:→ ching0629:之後直接用z[[1]]到z[[9]]作为储存资料的矩阵吧 10/18 08:11
3F:→ robin112:谢谢c大,我会试试看你说的方法! 10/18 11:43