Ich versuche, meine Spaltennamen zu durchlaufen, wo Typ = Zeichen und einen Datenrahmen zurückgeben, der alle vorherrschenden Werte jeder Zeichenspalte enthält, gruppiert durch ein ID-Feld.Vorherrschende Berechnung für Zeichenfelder
Gibt es eine Möglichkeit den folgenden Code in einer Art Schleife zu replizieren ?:
DF_Characters <- DF_Characters[,sapply(dfr,is.character)]
##Predominance Column1##
Predom <- select(DF_Characters, Group_ID, Column_1)
Predom <- group_by(Predom,Group_ID, Column_1)
Predom <- summarise(Predom,
CountPredom = n()
)
Predom <- arrange(Predom,Group_ID, desc(CountPredom))
Predom <- data.table(Predom, key="Group_ID")
Predominant_Column_1 <- Predom[,head(.SD,1),by=Group_ID]
##Predominant Column_2##
Predom <- select(DF_Characters, Group_ID, Column_2)
Predom <- group_by(Predom,Group_ID, Column_2)
Predom <- summarise(Predom,
CountPredom = n()
)
Predom <- arrange(Predom,Group_ID, desc(CountPredom))
Predom <- data.table(Predom, key="Group_ID")
Predominant_Column_2 <- Predom[,head(.SD,1),by=Group_ID]
##Merge final table##
Merged <- merge(Predominant_Column_1 ,Predominant_Column_2 ,by="Group_ID")
Auch meine Frage zu klären, ich eine Dummy-Tabelle hinzugefügt: DF_Character_table
Ergebnis wie folgt aussehen shoul Result Table
Also für Gruppe 1 war Petre der vorherrschende Name in Spalte 1 und Auto war die vorherrschende Art des Reisens. Spalte 1 und Spalte 2 Vorherrschaft sollte jeweils berechnet werden.
Vielen Dank
Alle Spaltennamen sind Zeichen. Meinst du den Modus/Typ der Variablen/Spalte? – Jianfeng
Ja, ich meine, wo die Variable in der Spalte vom Typ Charakter ist: d.h> Klasse (DF_Characters $ Column_1) [1] "Charakter" – Kempie