有没有办法在对象中自动粘贴列名?
Is there a way to paste automatically a column name in an object?
我有 2 个 data.frame
有很多列。
我想获取每列的一些信息(我在这 2 个 data.frame
之间进行排列测试,例如对每列 this),所以我必须使用列的名称或编号在我的脚本中的对象(例如 object <-data_frame_n$colomn_name_n
)中。
有没有我的剧本:
quizz <- data_frame_1$colomn_name_1
control <- data_frame_2$colomn_name_1
obsdiff <- mean(quizz)-mean(control)
N <- 12
avgdiff <- replicate(1000, {
all <- sample(c(control,quizz))
newcontrols <- all[1:N]
newquizz <- all[(N+1):(2*N)]
return(mean(newquizz) - mean(newcontrols))
})
hist(avgdiff)
abline(v=obsdiff, col="red", lwd=2)
# the proportion of permutations with larger difference
(sum(abs(avgdiff) > abs(obsdiff)) + 1) / (length(avgdiff) + 1)
好吧,为了获得我所有的值,我通过手动更改列的名称或编号来为每一列添加脚本(例如,对于第一个值:
quizz <- data_frame_1$colomn_name_1
control <- data_frame_2$colomn_name_1
...
我午餐脚本,我写了获得的值;
我更改的第二个值:
quizz <- data_frame_1$colomn_name_2
control <- data_frame_2$colomn_name_2
...
我吃脚本,我写了获得的值...等)。
那么,有没有办法 replace/paste 自动从对象中的 data.frame
获取列名?
更好的是,有没有办法替换它并获得包含所有结果的向量?
谢谢开导!
您可以使用
colnames(df)
获取所有列名和
df[, "column1"] # equivalent to df$column1
获取专栏。所以你可以有类似
的东西
columns <- colnames(df)
for (col in columns) {
# do something with df[, col]
}
我想剩下的取决于你想做什么。
我有 2 个 data.frame
有很多列。
我想获取每列的一些信息(我在这 2 个 data.frame
之间进行排列测试,例如对每列 this),所以我必须使用列的名称或编号在我的脚本中的对象(例如 object <-data_frame_n$colomn_name_n
)中。
有没有我的剧本:
quizz <- data_frame_1$colomn_name_1
control <- data_frame_2$colomn_name_1
obsdiff <- mean(quizz)-mean(control)
N <- 12
avgdiff <- replicate(1000, {
all <- sample(c(control,quizz))
newcontrols <- all[1:N]
newquizz <- all[(N+1):(2*N)]
return(mean(newquizz) - mean(newcontrols))
})
hist(avgdiff)
abline(v=obsdiff, col="red", lwd=2)
# the proportion of permutations with larger difference
(sum(abs(avgdiff) > abs(obsdiff)) + 1) / (length(avgdiff) + 1)
好吧,为了获得我所有的值,我通过手动更改列的名称或编号来为每一列添加脚本(例如,对于第一个值:
quizz <- data_frame_1$colomn_name_1
control <- data_frame_2$colomn_name_1
...
我午餐脚本,我写了获得的值;
我更改的第二个值:
quizz <- data_frame_1$colomn_name_2
control <- data_frame_2$colomn_name_2
...
我吃脚本,我写了获得的值...等)。
那么,有没有办法 replace/paste 自动从对象中的 data.frame
获取列名?
更好的是,有没有办法替换它并获得包含所有结果的向量?
谢谢开导!
您可以使用
colnames(df)
获取所有列名和
df[, "column1"] # equivalent to df$column1
获取专栏。所以你可以有类似
的东西columns <- colnames(df)
for (col in columns) {
# do something with df[, col]
}
我想剩下的取决于你想做什么。