değişkenini gruplandırarak benzersiz ID'lerin katmanlanmış rasgele örnek oranı Aşağıdaki örnek veri çerçevesiyle, "Kohort" faktörünün her seviyesinden ID'nin "Kimliğinin" tabakalı rastgele bir örneğini (örn.,% 40) çizmek istiyorum : sadece kullanarak satır rastgele bir sayı çizmek bilmekR:
data<-structure(list(Cohort = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), ID = structure(1:20, .Label = c("a1 ",
"a2", "a3", "a4", "a5", "a6", "a7", "a8", "a9", "b10", "b11",
"b12", "b13", "b14", "b15", "b16", "b17", "b18", "b19", "b20"
), class = "factor")), .Names = c("Cohort", "ID"), class = "data.frame", row.names = c(NA,
-20L))
aşağıdadır:
library(dplyr)
data %>%
group_by(Cohort) %>%
sample_n(size = 10)
Ama benim gerçek veri boyuna yüzden ben her kohort ve birkaç içinde aynı kimliğinin çoklu vaka var Farklı boyutlarda kohortlar, böylece benzersiz ID'lerin bir oranını seçme ihtiyacı. Herhangi bir yardım takdir edilecektir.
data %>% group_by(Cohort) %>%
filter(ID %in% sample(unique(ID), ceiling(0.4*length(unique(ID)))))
Bu rastgele örneklenmiş kimliklerini içeren tüm satırları döndürür:
çoğaltamaz Neden Probleminiz var, aksi halde bunu anlayamıyoruz ... böylece birden fazla kimliğiniz varsa, lütfen bu özellik ile veri üretin;) – Arthur