Das finden der Länge der jede Zeichenfolge in eine Spalte des Daten-frame in R

Möchte ich berechnen Sie die Anzahl von Zeichen in jedem string der name Spalte. Mein dataframe sample ist wie unten dargestellt :

date        name           expenditure      type
23MAR2013   KOSH ENTRP     4000             COMPANY
23MAR2013   JOHN DOE       800              INDIVIDUAL
24MAR2013   S KHAN         300              INDIVIDUAL
24MAR2013   JASINT PVT LTD 8000             COMPANY
25MAR2013   KOSH ENTRPRISE 2000             COMPANY
25MAR2013   JOHN S DOE     220              INDIVIDUAL
25MAR2013   S KHAN         300              INDIVIDUAL
26MAR2013   S KHAN         300              INDIVIDUAL

Warum ist das nchar gab mir eine Liste von Zufallszahlen? So ist str_length() aus stringr Paket

Length <- aggregate(nchar(sample$name), by=list(sample$name), FUN=nchar)

Ausgabe

         Group.1       x
1 JASINT PVT LTD       2
2       JOHN DOE       1
3     JOHN S DOE       2
4     KOSH ENTRP       2
5 KOSH ENTRPRISE       2
6         S KHAN 1, 1, 1

Gewünschte Ausgabe :

     Group.1       x
1 JASINT PVT LTD       14
2       JOHN DOE       8
3     JOHN S DOE       10
4     KOSH ENTRP       10
5 KOSH ENTRPRISE       14
6         S KHAN       6

Dem csv-Format für die Tabelle oben :

"Date","name","expenditure","type"
"23MAR2013","KOSH ENTRP",4000,"COMPANY"
"23MAR2013 ","JOHN DOE",800,"INDIVIDUAL"
"24MAR2013","S KHAN",300,"INDIVIDUAL"
"24MAR2013","JASINT PVT LTD",8000,"COMPANY"
"25MAR2013","KOSH ENTRPRISE",2000,"COMPANY"
"25MAR2013","JOHN S DOE",220,"INDIVIDUAL"
"25MAR2013","S KHAN",300,"INDIVIDUAL"
"26MAR2013","S KHAN",300,"INDIVIDUAL"
Müssen Sie die spaces auch in der Zählung? In den erwarteten Ausgang, da ist eine gewisse Inkonsistenz in Bezug auf die Anzahl der Zeichen., zum Beispiel, in der ersten Reihe, auch der Raum gezählt wurde, aber in der letzten Zeile 5 den Raum ausgelassen wird, Wenn es ein Tippfehler ist data.frame(Group=unique(sample$name), x=nchar(unique(sample$name)))

InformationsquelleAutor sunitprasad1 | 2015-03-10

Schreibe einen Kommentar