dire que j'ai un Mais comment puis-je maintenant quelles colonnes et rangées les valeurs les plus élevées sont? P> Exemple: P> dataframe code> avec 250 lignes et 1000 colonnes. Je souhaite trouver les 10 valeurs maximales et les 10 valeurs minimales, que je peux facilement à avec
queue code> et
la fonction code> appliquer sur le fichier de données code> vectorisé code> .
df <- data.frame(c("house1", "house2", "house3"), c(2006, 2007, 2008), c(0.3, 0.5, 0.1), c(0.9, 0.4, 0.01))
colnames(df) <- c("house.num", "year", "data1", "data2")
> df
house.num year data1 data2
1 house1 2006 0.3 0.90
2 house2 2007 0.5 0.40
3 house3 2008 0.1 0.01
3 Réponses :
Essayez ceci:
library(data.table) df <- data.frame(c("house1", "house2", "house3"), c(2006, 2007, 2008), c(0.3, 0.5, 0.1), c(0.9, 0.4, 0.01)) colnames(df) <- c("house.num", "year", "data1", data2") setorder(df, -data1)
Merci! Le problème est que je n'ai pas 2 colonnes de données, mais mille. Je n'ai pas besoin du max. Valeurs par colonne, mais par matrice de données.
EDIT: strong> Supprimé le regroupement par colonne. Ce n'est peut-être pas le format que vous recherchez, mais voici une solution qui retournera les résultats dans "long" format: 20 rangées , un pour chacun des 10 enregistrements haut et inférieur. Chaque rangée a le numéro de la maison, l'année, le numéro de ligne, le nom de la colonne et si l'enregistrement est en haut ou en bas 10. p>
Utilisation de data.table code>
Veuillez partager votre sortie attendue.