【发布时间】:2019-01-22 09:02:45
【问题描述】:
我有一个包含多行和多列的数据集,我想通过在少数情况下忽略一列中的 NA 并在少数情况下包括 NA 来提取唯一行。请看下面的详细介绍
数据集_A
e_id age fn ln custom_id
e1234 23 sur bab 1344789
e1234 23 sur bab 1344789
e1234 23 sur bab 1617
e1234 23 sur bab NA
e2345 22 nav kum NA
e2345 22 nav kum 52109
e2345 22 nav kum NA
e3456 21 ash kuma NA
e3456 21 ash kuma NA
e4567 23 anu kot NA
预期输出
e_id age fn ln custom_id
e1234 23 sur bab 1344789
e1234 23 sur bab 1617
e2345 22 nav kum 52109
e3456 21 ash kuma NA
e4567 23 anu kot NA
基本上,如果该 e_id 存在 custom_id,我想忽略 custom_id 中具有 NA 的行,而如果用户在 custom_id 列中只有 NA 值,我想保留 1 行并忽略其他行。
试过了:
final_output = dataset_A[order(dataset_A$custom_id),]
final_output = final_output[!duplicated(final_output[,c(1:4)]),]
使用上面的代码,我无法从我的数据集中提取几行,例如 1617 custom_id for e_1234 e_id。如果我们能够找到相同的解决方案,那将非常有帮助。
【问题讨论】: