我在Mac 10.11.1版本上运行R Studio。当通过doBy pacakge运行以下代码时:
ATT_SUM <- summaryBy(STUENR_MEM + STUENR_ABS ~ STUDENT_NUMBER + GRADE_LEVEL + Current.School + ENROLL_STATUS + LAST_NAME + FIRST_NAME + ENTRYDATE + EXITDATE + Enrolled.School + STU_MEM + STU_ABS,
data = Att_14, FUN = function(x) { c(Sum = sum(x))})
我收到以下消息:
Error in data.frame(..., check.names = FALSE) : invalid multibyte string, element 4693
我正试图通过STUENR_MEM和STUENR_ABS变量来折叠或汇总我的数据。我的数据框架中的许多观察结果都有同一变量的多个条目。我想将STUENR_MEM和STUENR_ABS列中的数据相加,以创建一个总成员资格和总缺席列——因此,这两个变量将有一个单独的列,与观测值相对应。
列名:
1"当前学校"GRADE_LEVEL"ENROLL_STATUS"STUDENT_NUMBER"LAST_NAME"FIRST_NAME"
[7] "STU_EM"STU_ABS"STUENR_MEM"STRUENR_ABS"ENTRYDATE"EXITDATE"
[13] "已注册.学校"
我一直在寻找答案,但没有找到。
听起来您的数据文件或特定列包含编码问题。在csv/txt文件导入过程中尝试使用fileEncoding
参数。根据数据源的特定编码调整类型:UTF-8
、Windows-1252
、latin1
等
Att_14 <- read.csv("DataSource.csv", stringsAsFactors=FALSE, fileEncoding="UTF-8")
此外,考虑R的aggregate(),它可以按多列进行汇总和分组:
ATT_SUM <- aggregate(cbind(STUENR_MEM, STUENR_ABS) ~ STUDENT_NUMBER + GRADE_LEVEL +
Current.School + ENROLL_STATUS + LAST_NAME + FIRST_NAME +
ENTRYDATE + EXITDATE + Enrolled.School + STU_MEM + STU_ABS,
data = Att_14, FUN = sum)