r - 用基于指标零和一的值填充 R 中的缺失向量
问题描述
我有一个长度为 n 的向量 r ,其中包含零和一。不可能全为零。此外,我也会有一个长度为 n 的向量 y,但是基于向量 r 中的零值,y 中的某些值会丢失。我必须用样本值替换 y 中的缺失值
例如,如果r = c(1,1,0)
soy = c(3,2,NA)
采样一个值 (8),则将 NA 替换为 8。向量r
可能有两个零,所以我必须采样两个值。并用样本值替换 y 的两个缺失。
解决方案
您可以将r
向量转换为布尔值,as.logical
然后使用它来索引y
向量以进行替换。对于存在多个缺失值的情况,使用索引向量的总和指定 的size
参数。sample
我从 1:10 采样整数来说明这一点,因为您没有指定您从什么采样:
r <- c(1,1,0)
y <- c(3,2,NA)
idx <- !as.logical(r)
y[idx] <- sample(1:10, size = sum(idx))
r
尽管您可以直接检查NA
值,但该向量有点多余y
:
ifelse(is.na(y), sample(1:10), y)
推荐阅读
- rest - Websphere 8.5 中的 CXF Rest 服务
- mysql - 如何为每个类别检索一个随机行?
- java - 当我使用 SendKeys 在字段中发送日期并且当我运行脚本时,它会在该字段中粘贴两次日期
- python - 将方差分析结果转换为数据框
- python - 如何在 django 中使用移动 otp 验证用户注册?
- powershell - 在 Powershell 中将 JSON 转换为 Csv 列
- terraform - 使用 Terraform 将叶子接口附加到 Cisco ACI 上的 EPG
- python - 在 ubuntu 上,如何在现有的 python3.6(或更新版本)安装旁边安装 python3.5?
- apache-kafka - broker的数量和partition的数量会影响partition leader的选举吗?
- sql - SQL Server:为什么 SELECT * INTO 比 SELECT * 快(排除网络)