我正在尝试对数据帧的2列进行采样,但是sample函数仅允许我对一列而不是对这两列(Campaignid,CampaignName)进行一次采样。
有没有想要的采样方式!
camp.d <- data.frame(Campaignid=c(121,132,133,143,153),
CampaignName=c('a','b','c','d','e'))
#allows only one column
a <- sample(camp.d$Campaignid, 100, replace = TRUE)
预期:
Campaignid CampaignName
121 a
121 a
133 c
132 b
132 b
...
答案 0 :(得分:3)
我认为您需要这个-
sampled_data <- camp.d[sample(nrow(camp.d), 100, replace = T), ]
head(sampled_data)
Campaignid CampaignName
2 132 b
5 153 e
3 133 c
3.1 133 c
2.1 132 b
4 143 d
答案 1 :(得分:2)
您可以使用示例将切片称为完整数据帧
camp.d[sample(camp.d$Campaignid, 100), ]
答案 2 :(得分:1)
您可以尝试:
as.data.frame(lapply(camp.d, sample, size = 100, replace = TRUE))
Campaignid CampaignName
1 132 a
2 133 c
3 143 a
4 132 e
5 133 c
6 143 a
7 132 c
8 153 a
9 121 c
10 132 b