Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对R中的变量列表求和_R_Variables_Sum - Fatal编程技术网

对R中的变量列表求和

对R中的变量列表求和,r,variables,sum,R,Variables,Sum,我试图总结一系列变量 qdisgust <- c(2,3,5,8,12,17,18,22,23,25,28,29,31,33) vqdisgust <- list() n <- length(qdisgust) lhs <- paste("mydata$Disgust_", qdisgust, sep="") eq <- paste("vqdisgust <- c(lhs)") eval(parse(text=eq)) qdisgust如果我们想

我试图总结一系列变量

qdisgust <- c(2,3,5,8,12,17,18,22,23,25,28,29,31,33)
vqdisgust <- list()
n    <- length(qdisgust)
lhs  <- paste("mydata$Disgust_", qdisgust, sep="")
eq   <- paste("vqdisgust <- c(lhs)")
eval(parse(text=eq))

qdisgust如果我们想要获得“mydata”中多列的
sum
,我们可以使用
colSums

colSums(mydata)
如果
qdisgust
是列的索引,则

colSums(mydata[paste0("Disgust_", qdisgust)])


qdisgust
是一个
vector
其中是
mydata
?请提供一个可复制的示例,您可能不需要
评估(parse
谢谢@akrun!这似乎是朝着正确的方向进行的。但是我得到了以下错误:
[.data.frame
(mydata,paste0(“厌恶”),qdisgust]中的colSums错误:未定义的列selected@Chris它基于您显示的代码。
paste0
将获取数据集中可能存在的列名。请检查这些列是否在您的数据中。很好,@akrun。我现在得到以下错误:>colSums(mydata[paste0(“厌恶”),qdisgust)]colSums中的错误(mydata[paste0])(“厌恶”,qdisgust)]:“x”必须是numeric@Chris这意味着您要求和的列不是数字。请检查
str(mydata)
,如果不是数字,请使用
as.numeric
转换为
numeric
,如果是字符。如果是
factor
,则转换为
as.numeric(as.character(
非常感谢,@Akrun!现在它工作得非常好!
colSums(mydata[grep("Disgust_", names(mydata))])