微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

收到错误“-”对因素无意义时,如何编辑数据框以在此功能内工作?

如何解决收到错误“-”对因素无意义时,如何编辑数据框以在此功能内工作?

我在R中创建了一个函数...

#### generate scoring function 
install.packages("multicon")
library(abind)
library(foreach)
library(multicon)

scoring_RSE<- function(scoreDf){
  RSE_items <- data.frame(scoreDf$RSE1,scoreDf$RSE2,scoreDf$RSE3,scoreDf$RSE4,scoreDf$RSE5,scoreDf$RSE6,scoreDf$RSE7,scoreDf$RSE8,scoreDf$RSE9,scoreDf$RSE10)
  RSE_score <- composite(RSE_items,R = c(2,5,6,8,9),maxscore = 4)
  return(RSE_score)
}

为调查打分。

我创建了一个假数据集来对其进行测试,并且它可以正常工作。这个数据集就像我的列表一样读取列表

RSE_test <- data.frame(matrix(nrow=3,ncol=14))
for(i in 1:3) {
  RSE_test[i,1:14] = sample(1:4,14,replace=TRUE)
}
colnames(RSE_test) <- c("col1","col2","col3","col4",paste0("RSE",1:10))

### create a dataframe for all of the reverse items 
RSE_test_rev <- RSE_test
#reverse code columns
RSE_test_rev[,c(2,9))] <- 5 - RSE_test[,9))]

#For the dataframe,find the mean of each row manually 
RSE_scored_manual <- apply(RSE_test_rev[,c(1:10))],1,function(x) mean(x,na.rm = TRUE))

#test the function we made 
RSE_scored_function <- scoring_RSE(RSE_test)

但是,当我插入实际数据集时,会收到此错误...

“-”对要素无意义“-”对要素无意义“-”对要素无意义“-”对要素无意义“-”对要素无意义

我的数据集是一个导入的CSV文件,其内容类似于列表:

df1 <- structure(list(RSE1 = c("1","1","3"),RSE2 = c("1","2",RSE3 = c("2",RSE4 = c("2","4","2"),RSE5 = c("2",RSE6 = c("2",RSE7 = c("2",RSE8 = c("2",RSE9 = c("2",RSE10 = c("2","2")),class = "data.frame",row.names = c(NA,-3L))

我尝试将自己的数据集转换为数字,但是重新格式化了数据框。

surveyResps<-as.numeric(unlist(df1))

surveyResps<-unlist(lapply(df1,as.numeric))

即使单独地做专栏,我什至找不到平均值。

有人以前收到过这样的错误或有建议吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。