Zufällig Probe der Prozentsatz von Zeilen in einem Daten-frame
Bezug auf diese Frage.
gender <- c("F", "M", "M", "F", "F", "M", "F", "F")
age <- c(23, 25, 27, 29, 31, 33, 35, 37)
mydf <- data.frame(gender, age)
mydf[ sample( which(mydf$gender=='F'), 3 ), ]
Statt der Auswahl einer Anzahl von Zeilen (3 in obigen Fall), wie kann ich eine zufällige Auswahl von 20% der Zeilen mit "F"? Also die fünf Zeilen mit "F", wie ich zufällig Probe 20% dieser Zeilen.
InformationsquelleAutor ATMathew | 2013-02-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie wäre es damit:
Wo 0.2 ist Ihre 20% und
length(which(mydf$gender=='F'))
ist die Gesamtzahl der Zeilen, die mitF
guter Punkt, danke, hab ich Hinzugefügt, dass in. Durch die Art und Weise, Ihnen fehlt ein Komma, und schließen eckige Klammer in Ihre Antwort
InformationsquelleAutor Ben
Können Sie
sample_frac()
Funktion indplyr
Paket.z.B.
Wenn Sie möchten, um eine Probe von 20 % in jeder Gruppe:
Wenn Sie möchten, um eine Probe von 20% innerhalb von jedem Geschlecht Gruppe:
InformationsquelleAutor Zhen Liang
Self-promotion aufmerksam. Ich schrieb eine Funktion, die es ermöglicht bequem stratified sampling, und ich habe enthalten eine option, um die Teilmenge Ebenen, von der Gruppierung der Variablen vor der Probenahme.
Die Funktion aufgerufen wird
stratified
und kann verwendet werden, haben Sie folgende Möglichkeiten:Können Sie mehrere Gruppen (zum Beispiel wenn Sie Ihr Daten-frame enthalten ist ein "state" - variable und Sie wollte die Gruppe von "Staat" und "Geschlecht" würden Sie
group = c("state", "gender")
). Sie können auch angeben, mehrere "select" - Argumente (zum Beispiel, wenn Sie wollten nur die weiblichen Befragten aus Kalifornien und Texas, und dein "state" - variable verwendet, die aus zwei Buchstaben Zustand Abkürzung, könnten Sieselect = list(gender = "F", state = c("CA", "TX"))
).Selbst die Funktion gefunden werden kann hier, oder Sie können herunterladen und installieren Sie das Paket (die haben Sie bequemen Zugang zu den Hilfe-Seiten und Beispielen) mit
install_github
von der "devtools" - Paket wie folgt:InformationsquelleAutor A5C1D2H2I1M1N2O1R2T1
Zum Beispiel 20%, können Sie diese verwenden, um die sample-Größe:
Das ist genau die Antwort auf Ihre Frage, wenn Sie Ihre Frage anders ist, bitte editieren Sie in mehr details.
Jemand darauf zu kommentieren, der downvote? Diese Antwort genau die Frage beantwortet.
InformationsquelleAutor Paul Hiemstra