我无法弄清楚如何做到这一点。我在 R 中有一个 data.frame。它看起来像这样:
Scores <- read.table(text = "
ID Test1 Test2 Test3 Final
1 Student1 20 23 21 48
2 Student2 16 15 18 36
3 Student3 25 20 22 40
4 Student4 14 19 18 42
5 Student5 10 15 14 30
")
我想要的是创建一个新的数据对象,该对象具有每个测试的值范围,包括最终测试。所以它看起来像这样:
result <- read.table(text = "
min max
Test1 10 25
Test2 15 23
Test3 14 22
Final 30 48
")
老实说,它是否只是列出最大值和最小值,或者实际计算差异对我来说并不重要。我只是想不出一种方法来实现这个不是不必要的复杂。我知道我可以手动和单独地拉出列,但必须有一些更好的方法来做到这一点。涉及by()
或tapply()
?但我就是不能让他们工作。
有任何想法吗?