列出R中向量中的不同值

Meh*_*lar 87 r vector distinct-values

如何在值为复制的向量中列出不同的值?我的意思是,类似于以下SQL语句:

SELECT DISTINCT product_code
FROM data
Run Code Online (Sandbox Code Playgroud)

csg*_*pie 151

你的意思是unique:

R> x = c(1,1,2,3,4,4,4)
R> x
[1] 1 1 2 3 4 4 4
R> unique(x)
[1] 1 2 3 4
Run Code Online (Sandbox Code Playgroud)


isa*_*pir 7

如果数据实际上是a,factor则可以使用该levels()函数,例如

levels( data$product_code )
Run Code Online (Sandbox Code Playgroud)

如果不是因素,但应该是因素,则可以先使用factor()函数将其转换为因素,例如

levels( factor( data$product_code ) )
Run Code Online (Sandbox Code Playgroud)

如上所述,另一个选择是unique()函数:

unique( data$product_code )
Run Code Online (Sandbox Code Playgroud)


Al *_* R. 6

尝试将复制函数与否定运算符"!"结合使用.

例:

wdups <- rep(1:5,5)
wodups <- wdups[which(!duplicated(wdups))]
Run Code Online (Sandbox Code Playgroud)

希望有所帮助.

  • 与'独特'相比,相当艰难的方式 (7认同)
  • 最好是放弃这些"有趣"的东西. (2认同)

小智 6

您还可以在R. Z <-sqldf('SELECT DISTINCT tablename.columnname FROM tablename')中使用sqldf包.