我有一个数据框如下所示。我想找到唯一的行(独特性)。但在这个数据中,我有“NA”。如果一行中所有值与其他行相同(例如行1,2,5),我希望忽略它,但如果不同(例如行2,4),我希望将其保留为唯一的行。
例如,在第1、2和6行中,除了NA之外的所有值都相同,因此因为NA可以是值“1和3”,我希望删除此行并仅保留第2行。
此外,在第6行中,值2和3(不包括NA)与c2和c5行相同,并且c6中可能存在NAs,得到与c2和c5相同的值,因此此行不是唯一的。
我希望得到这个输出:
输出:
此外,@ Sotos解决方案对我有更多帮助,但在最后一部分删除NA后,当为行制定模式时,他的解决方案认为c8和c6具有相同的模式(23)并将它们删除。但实际上c8是唯一的。
数据:
a1 a2 a3 a4
c1 2 1 3 NA
c2 2 1 3 3
c3 2 1 4 3
c4 2 2 3 NA
c5 2 1 3 3
c6 2 NA 3 NA
c7 2 NA 0 NA
c8 2 3 NA NA
我希望得到这个输出:
输出:
a1 a2 a3 a4
c2 2 1 3 3
c3 2 1 4 3
c4 2 2 3 NA
c7 2 NA 0 NA
c8 2 3 NA NA
hclust
来可视化相似性:plot(hclust(dist(your_data_frame)))
。 - Mehrad Mahmoudian