Ich möchte verstehen, wie zu tun, "Gruppe durch" und "zählen" -Funktionalität in der Ordinate durchführen. Ich habe mir ein paar Posts angeschaut, ohne zu finden, was ich wollte; Wenn es eine Antwort auf diese Frage gibt, würde ich mich über den Link freuen.Gibt es ein sauberes Gegenstück zu SELECT ... COUNT (*) ... GROUP BY ...?
Zum Beispiel suche ich nach Ausreißern in Daten; Ich möchte wissen, welche Orte die meisten „schlecht“ Maßnahmen erhalten:
place = rep(c('AL','AK','AZ','AR','CA','CO','CT','DE','FL','GA','HI'), times=4)
measure = rep(c('meas1','meas2','meas3','meas4'), each=11)
set.seed(200)
rating = sample(c('good','bad'), size = 44, prob=c(2,1), replace=T)
df = data.frame(place, measure, rating)
> df
place measure rating
1 AL meas1 good
2 AK meas1 good
3 AZ meas1 good
4 AR meas1 bad
5 CA meas1 bad
6 CO meas1 bad
7 CT meas1 bad
8 DE meas1 good
9 FL meas1 good
10 GA meas1 good
....(etc).....
Ich möchte verstehen, wie dies zu tun, um die tidyverse verwenden. Dieser Ansatz sqldf mit gibt mir, was ich will, also sagt mir, welche Orte sich die „schlechten“ Bewertungen hatte, und ordnet die Orte durch ihre „bad-ness“
library(sqldf)
sqldf("SELECT place, rating, COUNT(*) AS Count FROM df GROUP BY place, rating ORDER BY rating, count DESC").
place rating Count
1 CA bad 3
2 AK bad 2
3 AR bad 1
4 CO bad 1
5 CT bad 1
6 DE bad 1
7 FL bad 1
8 GA bad 1
9 AL good 4
10 AZ good 4
11 HI good 4
....(etc)....
Gibt es eine Möglichkeit um ähnliche Ergebnisse zu tun bekommen im ordentlichen?
Versuchen Sie 'df%>% count (Ort, Bewertung)%>% arrangieren (Bewertung, desc (n))' –
können Sie das ein wenig erklären oder entfalten? es tut sicherlich, was ich gehofft habe. – cumin
Probieren Sie '? Count',' 'arrangement' und' 'desc' aus .. das Lesen des Handbuchs könnte Ihnen helfen, ein oder zwei Dinge auf dem Weg zu lernen –