【发布时间】:2016-11-10 22:36:56
【问题描述】:
所以我在 R 中使用 data table 工作,大约有 5000 个观察值。我已经将所有这些新的等级变量开发成它们自己的类别(例如grade1、grade2、grade3 等),现在我想将它们组合成一个名为Grade 的变量。我用过这个命令:
DT.m1 = melt(
MathSummary,
id.vars = c("Date", "Total.Events", "Unique.Events"),
measure.vars = c("Gradeprek", "Grade1", "Grade2", "Grade3", "Grade4",
"Grade5", "Grade6", "Grade7", "Grade8",
"Algebra1", "Algebra2", "Geometry", "Precalculus"),
value.factor=TRUE, na.rm=TRUE
)
但是,当结果出来时,它给了我 65000 次观察。也许它可能已经创建了重复项或其他内容。一分钱你的想法?
【问题讨论】:
-
13 measure.vars * 5000 = 65000 行。这就是
melt所做的。 -
您期望的输出是什么?
-
我希望它仍然有相同的 5000 个观察值,但会在一个名为 Grade 的列中对齐
-
@MarkBornSuccessfulHarris - 我看不出这怎么可能。如果您有一个像
df <- data.frame(id=1:3, grade1=4:6, grade2=5:7, grade3=6:8)这样的简化示例,您的预期结果会如何? -
你想要一个组的成绩吗?如
"87, 88, 57, 66"?所以单行将所有成绩作为一个元素?
标签: r data.table