r - 替换变量
问题描述
如果这对这个社区来说太基本了,请提前道歉。
我有一个像这里所附的那样的数据框。我想告诉 R 这样做:B4 列中每个缺失变量(NA)的 B1 + B2 /2,然后使用答案替换那些缺失变量(NA)。
任何建议将被认真考虑。
谢谢
解决方案
NA
为's创建一个索引B4
并使用该索引来分配公式的结果。
i <- is.na(df1$B4)
df1$B4[i] <- with(df1[i, ], B1 + B2/2)
df1
# B1 B2 B3 B4
#1 2 NA 5 NA
#2 4 4 9 6
#3 3 6 8 6
#4 6 2 NA 10
#5 4 6 2 12
#6 2 6 3 14
#7 1 1 1 3
#8 1 3 6 6
#9 NA 7 NA 2
数据dput
格式
df1 <-
structure(list(B1 = c(2, 4, 3, 6, 4, 2, 1, 1, NA),
B2 = c(NA, 4, 6, 2, 6, 6, 1, 3, 7), B3 = c(5, 9, 8,
NA, 2, 3, 1, 6, NA), B4 = c(NA, 6, NA, 10, 12, 14, 3,
6, 2)), class = "data.frame", row.names = c(NA, -9L))
推荐阅读
- json - 如何在 JSON 中重叠引号?
- azure - 用于在 azure devops.Apache maven 上创建基于 java 的 Web 应用程序的管道以创建 build 。下面的yaml代码和我得到的输出错误
- angular - Angular 8 - 将文件拆分成更小的块
- node.js - 从 nextjs API 路由发送文件
- python-3.x - 熊猫没有在最后一列进行总和计算
- mysql - 我需要找出我的数据库中最受欢迎的销售产品,同时显示产品 ID、名称和销售数量
- javascript - 为什么在检查假图像文件时无法上传doc和pdf类型的文件
- sql - MongoDB 通过一个公共列将 2 个数据库合并为 1 个
- pyspark - 我可以将 PyFlink 与 PyTorch/Tensorflow/ScikitLearn/Xgboost/LightGBM 一起使用吗?
- python - 使用 BeautifulSoup 进行网页抓取,单击隐藏选项卡的元素