How to extract unique elements from a data.frame in R?
15,650
Solution 1
A 'data.frame' can be considered as a 'list' with columns as 'list' elements having the same length. By using unlist
, we can convert it to vector
and then get the unique
values and convert to 'character' class with as.character
.
as.character(unique(unlist(df)))
Solution 2
Or simply:
unique(as.vector(as.matrix(df)))
## [1] "Hello" "fat" "man" "cat" "dog" "black"
Author by
Unstack
Updated on June 04, 2022Comments
-
Unstack about 2 years
Can someone suggest a way to extract unique elements from a data.frame?
I have noticed
unique
, but since it works on either rows or columns, it doesn't do what I'm looking for. I'm after unique cells from a data.frame.e.g.,
df<-data.frame(V1=c("Hello","fat","man"),V2=c("cat","fat","Hello"),V3=c("man","dog","black"))
Extracting unique elements should give me
c("Hello","fat","man","cat","dog","black")