作者jpt (You'll Never Walk Alone)
站内Statistics
标题[程式] 合并回圈内长度不等的变数
时间Fri Jan 25 20:58:53 2013
[软体程式类别]:
R
[程式问题]:
合并回圈内的变数
[软体熟悉度]:
中(3个月到1年)
[问题叙述]:
我在写程式时遇到一些困扰,当k=1时,会得到30个数字,
当k=2时,会得到41个数字,每次得到的数字个数都不尽相同,
一共会得到7994个数字
我想把这些数字全部集合起来,放在一个矩阵或是data frame里面,
程式写到一半就不知该如何写下去了,maize是我的dataset,
我想请问程式码该如何写会比较好
感谢
[程式范例]:
new.data<-matrix(0,7994,1)
distance<-seq(0.75,75,by=0.75)
for(k in 1: 100)){
resampling<-sample(which(maize$x1==distance[k]),replace=T)
data <- list(NULL)
data[[k]]<-resampling
}
-----------------------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.120.190.17
※ 编辑: jpt 来自: 140.120.190.17 (01/25 20:59)
※ 编辑: jpt 来自: 140.120.190.17 (01/25 21:02)
1F:→ clickhere:help("list") 01/25 23:13
2F:→ jpt:可以拜托再说详细点吗? 01/26 02:02
※ 编辑: jpt 来自: 1.165.160.191 (01/26 02:33)
3F:→ gsuper:data <- list(NULL) ; data[[k]] <- 当次回圈产生的资料 01/26 20:01
4F:推 lin15:只有一个值应该用c()起来就可以了吧? 01/26 21:08
※ 编辑: jpt 来自: 1.165.160.191 (01/26 22:14)
5F:→ jpt:g大,我照着你的方式试了,可以建立出一个有1-100层的list 01/26 22:18
6F:→ jpt:可data[[1]]到data[[99]]的值都是NULL,可以再请你指点一下吗 01/26 22:20
7F:→ jpt:l大,用c()的话,那()里面要填什麽啊? 可以也请你指点一下吗? 01/26 22:24
8F:→ jpt:非常感谢各位的帮忙~ 01/26 22:47
9F:推 sandows:你是说一次resample 会有7994个数字 然後要凑成dataframe? 01/26 23:26
10F:→ jpt:是跑一次回圈会得到7994个数字, 而每一次的resampling 01/26 23:32
11F:→ jpt:会得到个数不全然相同的数字,可能是33,40,60,每次都不一样 01/26 23:33
12F:→ jpt:根据maize$x1==distance[k]里的个数决定 01/26 23:34
13F:→ sandows:那你应该知道最多会有几个数字 做一个矩阵 例如60x100 01/26 23:38
14F:→ sandows:然後把33个数字後面补27个0或是负数填进去就好了 01/26 23:39
15F:→ sandows:之後你要处理就把那些0或负数筛选掉 01/26 23:40
16F:→ jpt:我试试看~ 01/26 23:59
17F:→ jpt:感谢sandows, 终於弄出来了 ! 01/27 00:08
18F:→ sandows:OK that's good 01/27 00:27
19F:→ lin15:回圈外a<-NULL 回圈内a<-c(a,output) 接起来就好 01/27 01:09
20F:→ jpt:我也来试看看 01/27 11:59