R-创建数据帧,用于检查多个数据帧中的NA



我有两个数据帧,比如

df1 <- data.frame(Company = c('A','B','C','D','E','F'),
`X1980` = c(21,NA,53,57,11,26),
`X1981` = c(35,33,45,NA,NA,12))
df2 <- data.frame (Company = c('A','B','C','D','E','F'),
`X1980` = c(78,2,NA,24,25,26),
`X1981` = c(435,33,45,5,10,12))

我想创建一个新的数据框架(df3(,使公司列保持原样。如果其中一个或两个值都为NA,则1980年和1981年的值应为0,如果两个值均为非NA,则应为1。导致以下数据帧:

result df3
Company  1980  1981
A       1     1
B       0     1
C       0     1
D       1     0
E       1     0
F       1     1

我是新来的,所以如果有什么方法可以改进我的问题,请告诉我:(谢谢你的帮助!

这里有一行代码。

cbind(df1[1], (!is.na(df1[-1]) & !is.na(df2[-1])) + 0L)
#  Company X1980 X1981
#1       A     1     1
#2       B     0     1
#3       C     0     1
#4       D     1     0
#5       E     1     0
#6       F     1     1

数据,已更正

df1 <- data.frame(Company = c('A','B','C','D','E','F'),
`1980` = c(21,NA,53,57,11,26),
`1981` = c(35,33,45,NA,NA,12))
df2 <- data.frame (Company = c('A','B','C','D','E','F'),
`1980` = c(78,2,NA,24,25,26),
`1981` = c(435,33,45,5,10,12))

最新更新