Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在调用两个数据集时创建新列_R_Mutate - Fatal编程技术网

R 在调用两个数据集时创建新列

R 在调用两个数据集时创建新列,r,mutate,R,Mutate,如果 1. df1$col1已连接 2. df1$col2==df2$col2 df1 <- df1 %>% mutate(AConnect = paste('Mapped'[col1 == "Connected" & df1$col2 == df2$col2])) df1% 变异(AConnect=paste('Mapped'[col1==“Connected”&df1$col2==df2$col2])) 较长的对象长度不是较短对象长度的倍数 获取列中的NA。假设d

如果
1.
df1$col1
已连接

2. <代码>df1$col2==df2$col2

df1 <- df1 %>%
  mutate(AConnect = paste('Mapped'[col1 == "Connected" & df1$col2 == df2$col2]))
df1%
变异(AConnect=paste('Mapped'[col1==“Connected”&df1$col2==df2$col2]))
较长的对象长度不是较短对象长度的倍数


获取列中的NA。

假设
df1
df2
具有相同的行数

df1$AConnect <- NA_character_
df1$AConnect[df1$col1 == "Connected" & df1$col2 == df2$col2] <- "Mapped"

这将分配
“已映射”
,其中
col1==“已连接”
col2==df2$col2
,否则
NA
已解决-需要%in%,因为在列中匹配-不等于该特定行-

df1 <- df1 %>%
  mutate(AConnect = ifelse(cl1 == "Connected" & col2 %in% df2$col2, "Mapped", NA))
df1%
变异(AConnect=ifelse(在%df2$col2中,cl1==“已连接”和col2%,“已映射”,NA))

似乎在大多数情况下都保留NA,但其中一个已成功映射。不确定你是否还有其他想法<代码>df1%变异(Aconent=ifelse(col1==“Connected”&col2==df2$col2,“映射”,NA))测试代码后,分开测试代码,似乎调用“``col2==df2$col2``时,它无法查找与另一列的dfsResolved中的一个匹配的值“xxx xx xxxx”-需要%in%,因为它在一列中匹配-不等于该特定值row@HP. 哦,我明白了。我很难猜测,因为没有共享数据。我刚刚关注了你的帖子,其中提到了
2。df1$col2==df2$col2
df1 <- df1 %>%
  mutate(AConnect = ifelse(cl1 == "Connected" & col2 %in% df2$col2, "Mapped", NA))