List distinct values in a vector in R List distinct values in a vector in R r r

List distinct values in a vector in R


Do you mean unique:

R> x = c(1,1,2,3,4,4,4)R> x[1] 1 1 2 3 4 4 4R> unique(x)[1] 1 2 3 4


If the data is actually a factor then you can use the levels() function, e.g.

levels( data$product_code )

If it's not a factor, but it should be, you can convert it to factor first by using the factor() function, e.g.

levels( factor( data$product_code ) )

Another option, as mentioned above, is the unique() function:

unique( data$product_code )

The main difference between the two (when applied to a factor) is that levels will return a character vector in the order of levels, including any levels that are coded but do not occur. unique will return a factor in the order the values first appear, with any non-occurring levels omitted (though still included in levels of the returned factor).


Try using the duplicated function in combination with the negation operator "!".

Example:

wdups <- rep(1:5,5)wodups <- wdups[which(!duplicated(wdups))]

Hope that helps.