Re: [问题] for loop 循环命名变量

楼主: celestialgod (天)   2016-10-21 20:23:18
※ 引述《pinlateng (中肯不嘴砲)》之铭言:
: [问题类型]:
: 程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
: [软件熟悉度]:
: 新手(没写过程式,R 是我的第一次)
: [问题叙述]:
: 我现在将一份问卷汇入到 R 之后,希望依照某行的数值加以分类,再将分类结果
: 用循环命名以便后续处理
: [程式范例]:
: 有个 data frame:data
: 里头有一行 column_a,值是 1~5
: 现在想以 column_a 的数值为条件将特定列抓出来指定成一个变量
: 也就是把
: column_a_1 <- data[data$column_a == 1,]
: column_a_2 <- data[data$column_a == 2,]
: .
: .
: .
: 浓缩成类似这样的感觉:
: for (x in c(1:5)){
: column_a[x] <- data[data$column_a == x,]
: }
: [环境叙述]:
:
: R version 3.3.1 (2016-06-21)
: Platform: x86_64-w64-mingw32/x64 (64-bit)
: Running under: Windows >= 8 x64 (build 9200)
: [关键字]:
: 循环 变量 命名
不建议这么做,我建议下面的做法
dataList <- split(data, data$column_a)
for (i in 1:length(dataList)){
# do something with dataList[[i]]
}
至于你要的做法,自行?assign或是eval + parse
作者: pinlateng (中肯不嘴砲)   2016-10-21 23:51:00
好的,我来试试看。谢谢!

Links booklink

Contact Us: admin [ a t ] ucptt.com