【发布时间】:2019-06-28 02:34:32
【问题描述】:
我有一个包含 163 个观察值和 65 列的数据框,其中包含一些动物数据。 163 次观察来自 56 只动物,每一种都应该有三次重复的记录,但一些信息丢失了,所以对于大多数动物来说,我有三次重复(“A”、“B”、“C”),而对于一些我有仅重复(在“A”和“B”、“A”和“C”以及“B”和“C”之间变化)。
第 13:65 列包含一些我想总结的信息,并且只保留 rowSums 值较高的一式三份。所以我的数据框会是这样的:
ID Trip Acet Cell Fibe Mega Tera
1 4 A 2 4 9 8 3
2 4 B 9 3 7 5 5
3 4 C 1 2 4 8 6
4 12 A 4 6 7 2 3
5 12 B 6 8 1 1 2
6 12 C 5 5 7 3 3
我不确定我需要的是编写自己的函数还是循环,或者实际上最好的替代方法是什么 - 抱歉,我仍在学习,不幸的是,对我来说,我不像程序员那样思考让事情变得更具挑战性...
所以我想知道的是保留第 2 行和第 6 行(在每只动物的三次重复中,它们的 rowSums 最高),但对于整个数据框。结果我想要的是
ID Trip Acet Cell Fibe Mega Tera
1 4 B 9 3 7 5 5
2 12 C 5 5 7 3 3
如果问题没有详细阐述或没有意义,我真的很抱歉,这是我第一次在这里提问,我最近才开始学习 R。
【问题讨论】:
-
我认为由于您的示例同时包含数字和字符值,因此它不是矩阵,而是数据框。
-
是的,您完全正确,对此感到抱歉!我也更正了文字。谢谢!
标签: r function dataframe rowsum