R:我可以自动从数据帧创建变量Q1 = mydata $ Q1,Q2 = mydata $ Q2吗?

时间:2017-02-27 06:43:49

标签: r dataframe

假设我有mydata = read.csv(XXX)

的数据框

Q1 Q2 Q3 Q4 ...... Q100 a e i m ...... w b f j n ...... x c g k o ...... y d h l p ...... z

Q1 = mydata$Q1

我是否可以创建所有变量Q2 = mydata$Q2Q100 = mydata$Q100,...,mydata$column_names而无需手动输入所有列名= <input id="search" class="form-control" type="text" placeholder="Search Location" style="margin-left: 100px; margin-top: 10px; width: 30%; z-index: 1;"> <input type="button" class="btn btn-default" onclick="location.reload();" style="width: 10%; margin-top: 10px; position: absolute; z-index: 1; background-color: #ffffff; border: 1px solid #dce4ec; color: #2c3e50" value="Refresh" /> <div id="map" style="position: relative;"></div>

2 个答案:

答案 0 :(得分:1)

是的,使用attach(mydata)mydata的列名添加到环境中以用作Q1等。

答案 1 :(得分:0)

您可以使用eval(parse = ...)技巧:)只需用你的mydata替换mydata,它就可以作为魅力。祝你好运!

mydata <- data.frame(x=c(1, 2), y=c(3, 4), z=c(5, 6))

nn <- colnames(mydata)

for(n in nn){

   eval(parse(text=paste0(n,  "<- mydata$", n)))

}