web-dev-qa-db-fra.com

Lister les valeurs distinctes dans un vecteur en R

Comment puis-je lister les valeurs distinctes dans un vecteur où les valeurs sont réplicatives? Je veux dire, de manière similaire à l'instruction SQL suivante:

SELECT DISTINCT product_code
FROM data
86

Voulez-vous dire 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
147
csgillespie

Vous pouvez également utiliser le paquetage sqldf dans R. Z <-sqldf ('SELECT DISTINCT nom_table.nom_colonne FROM nom_table')

6
Clay Burns

Essayez d’utiliser la fonction dupliquée en combinaison avec l’opérateur de négation "!".

Exemple:

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

J'espère que ça t'as aidé.

6
Al R.

Si les données sont en fait un factor, vous pouvez utiliser la fonction levels(), par ex.

levels( data$product_code )

Si ce n'est pas un facteur, mais il devrait l'être, vous pouvez d'abord le convertir en utilisant la fonction factor(), par exemple.

levels( factor( data$product_code ) )

Une autre option, comme mentionné ci-dessus, est la fonction unique():

unique( data$product_code )
5
isapir