R 根据数据的分数赋值
因此,我有一个非常大的数据集,其中包含一些丢失/错误的数据。我想使用IF-else语句对缺少的数据进行编码。我不想为所有缺失/不好的值只分配一个值,而是希望根据分数分配基数 例如,对于df,如下所示: 将R 根据数据的分数赋值,r,R,因此,我有一个非常大的数据集,其中包含一些丢失/错误的数据。我想使用IF-else语句对缺少的数据进行编码。我不想为所有缺失/不好的值只分配一个值,而是希望根据分数分配基数 例如,对于df,如下所示: 将df$col2==B的50%分配给蓝色,另50%分配给红色 col1 col2 1 a 2 a 3 b 4 b 我知道你可以做到: if else( df$col2==b, "BLUE", df$col1) 但我想: col1 col2 1
df$col2==B的50%分配给蓝色,另50%分配给红色
col1 col2
1 a
2 a
3 b
4 b
我知道你可以做到:
if else( df$col2==b, "BLUE", df$col1)
但我想:
col1 col2
1 a
2 a
3 BLUE
4 RED
我想做这个条件的分区基础 您可以通过生成一个“红色”和“蓝色”向量,在需要时选择作为替换
## Generate some random data with missing values
set.seed(2017)
a = sample(c("Red", "Blue"), 20, replace=TRUE)
a = ifelse(runif(20, 0, 1) < 0.12, NA, a)
## Now replace missing
a = ifelse(is.na(a),
sample(c("Red", "Blue"), length(a), replace=TRUE, prob=c(0.5,0.5)), a)
##生成一些缺少值的随机数据
种子集(2017)
a=样品(c(“红色”、“蓝色”),20,替换为真)
a=ifelse(runif(20,0,1)<0.12,NA,a)
##现在替换丢失的
a=如果其他(即,na(a),
样本(c(“红色”、“蓝色”)、长度(a)、替换值=真、概率=c(0.5,0.5))、a)
添加一个可使StackOverflow社区更容易找到答案。