R 如何使用setequal()查找唯一的向量对?
我有一个简单的数据框,如下所示:R 如何使用setequal()查找唯一的向量对?,r,function,set,unique,R,Function,Set,Unique,我有一个简单的数据框,如下所示: v1 <- c(1,2) v2 <- c(1,3) v3 <- c(2,1) df.test <- data.frame(rbind(v1,v2,v3)) colnames(df.test) <- c('from', 'to') 理想情况下,仅获取唯一值对后,新数据帧应如下所示: 有人能帮忙吗?谢谢大家! 试试这个: # sort rows df.test <- t(apply(df.
v1 <- c(1,2)
v2 <- c(1,3)
v3 <- c(2,1)
df.test <- data.frame(rbind(v1,v2,v3))
colnames(df.test) <- c('from', 'to')
理想情况下,仅获取唯一值对后,新数据帧应如下所示:
有人能帮忙吗?谢谢大家! 试试这个:
# sort rows
df.test <- t(apply(df.test, 1, function(x) sort(x, decreasing=F)))
# get unique rows
df.test <- unique(df.test)
print(df.test)
如果在rbind之前对每一对进行排序,您只需在数据帧周围使用unique来删除重复的对,例如uniquerbindsortv1、sortv2、sortv3thanks,但假设有数百行,那么对它们中的每一行应用排序会有点麻烦谢谢,这既简洁又有用!
# sort rows
df.test <- t(apply(df.test, 1, function(x) sort(x, decreasing=F)))
# get unique rows
df.test <- unique(df.test)
print(df.test)