在R中,可以使用另一个数据帧中的已知公式来填充NA值。具体步骤如下:
library(dplyr)
library(tidyverse)
df1 <- data.frame(A = c(1, NA, 3, NA, 5),
B = c(NA, 2, NA, 4, NA))
df2 <- data.frame(A = c(10, 20, 30, 40, 50),
B = c(100, 200, 300, 400, 500))
df_filled <- df1 %>%
mutate(A = ifelse(is.na(A), df2$A, A),
B = ifelse(is.na(B), df2$B, B))
在上述代码中,我们使用了管道操作符(%>%)来将df1传递给mutate()函数。在mutate()函数中,我们使用ifelse()函数来检查A和B列是否为NA值。如果是NA值,则使用df2中对应列的值来替换NA值;如果不是NA值,则保持原始值不变。
print(df_filled)
输出结果如下:
A B
1 1 100
2 20 2
3 3 300
4 40 4
5 5 500
在上述输出结果中,我们可以看到原始数据帧df1中的NA值已经被df2中对应列的值填充。
这是使用R中另一个数据帧中的已知公式填充NA值的方法。请注意,这只是一种示例方法,具体的实现方式可能因数据结构和需求而有所不同。
领取专属 10元无门槛券
手把手带您无忧上云