作者robin112 (Robin)
看板Statistics
标题Re: [程式] R 利用for做变数宣告
时间Fri Oct 18 12:30:24 2013
那请问如果我想开始使用y0~y9的话是要怎麽使用呢?
例如
boxplot(y0$x~y0$y)
boxplot(y1$x~y1$y)
...
boxplot(y9$x~y9$y)
另外
list.x为宣告一个空白list
在for回圈里面的length(list.x)会随着i跑吗?
有点想不透这一行
谢谢指教
※ 引述《BugEater (无庸)》之铭言:
: 试试下面这个应该可行
: z=paste("y",0:9,sep="")
: ye=c(2000:2009)
: list.x<-list()
: for ( i in 1:10 )
: {
: list.x[[length(list.x)+1]] <- x[year == ye[i],]
: }
: names(list.x)<-z
: attach(list.x)
: ※ 引述《robin112 (Robin)》之铭言:
: : [软体程式类别]: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