昨天(从字面上看)我开始使用R进行编程,但遇到以下问题:
-我有一个包含R行的数据帧,每行包含N个值。 行由第一个字段和第二个字段标识,而其他N-2只是数值或NA。
-某些行具有相同的第一字段和相同的第二字段,例如:
row 1: a,b, third_field, .. ,last_field
row 2: a,b, third_field, .. ,last_field
规则是通常第一行的字段包含一些数字和一些NA,而第二行也包含NA和数字,但分布不同。
我要执行的操作是根据以下两个规则合并两行(或记录):
1)如果两行在给定字段上均具有NA,则我保留NA
2)如果两个之一中有一个数字,我将使用该值;如果两行都包含相同的值,我也将其保留。
如何做到这一点而又不循环每一行的每个字段? (1M行,十分之一的字段,可能会在明天完成)。
我不知道如何更好地解释我的问题。很抱歉,冗长的解释,非常感谢。
编辑:最好添加一个示例。以下两行
a,b,NA,NA,NA,1,2 ,NA
a,b,NA,3 ,NA,1,NA,NA
应该成为
a,b,NA,3 ,NA,1,2 ,NA