Ich versuche, die Anzahl der Nachkommastellen auf 1 gesetzt ich diese Berechnung durchgeführt habe:nicht in der Lage Anzahl der Ziffern einstellen, nach dezimal mit Paste-Funktion (R)
options(digits = 3)
DT<-data.table(x=c("a","b","c",NA,"b","e"),v=rnorm(6))
ans<-DT[,lapply(.SD,function(x) length(which(is.na(x)))/length(x)*100)]
nun am gibt mir den Anteil der nationalen Agenturen in einer Spalte:
x v
16.7 0
Aber wenn ich versuche, das Prozentzeichen "%" hinzufügen mit:
ans[,lapply(.SD, function(x) paste(x,"%",sep = ''))]
Die Dezimalziffern sind wieder da:
x v
1: 16.6666666666667% 0%
Was mache ich falsch? Wie kann ich diese Ausgabe erhalten ?:
x v
16.7% 0%
Vielen Dank.
auch 'round', wie' ans <-DT [, lapply (.SD, Funktion (x) Runde (Länge (was (ist.na (x)))/Länge (x) * 100, 1))] 'dann dein letzter Schritt. Beachten Sie, dass 'options (digits = 3)' die Anzahl der gedruckten Ziffern und nicht die Anzahl der Stellen, die R für jede Nummer speichert, steuert. – lmo
Nützliche Erklärung, danke. –