R中有什么方法可以在R数据帧中的一列中找到“文本”并将相同的值放在另一列中?

时间:2019-05-14 16:20:45

标签: r

假设我有数据帧x。它具有列“ A”和“ B”。

A        B
a b      a b
c d      c d
e f      e f
a b      a b
a b
a b      a b
a b      a b
a b
a b
a b
a b

我想显示这样的东西。

A        B
a b      a b
c d      c d
e f      e f
a b      a b
a b      a b
a b      a b
a b      a b
a b      a b
a b      a b 
a b      a b
a b      a b

基本上,我想对x.A上的值“ a b”进行过滤,以便可以在x.B上获得完全相同的值。对于B列,我只有“ a b”和“”值。我想在B列中将“”转换为“ a b”。

我尝试过使用gsub,sub,regex过滤器,但是在清除数据后,如果我在excel中导出此.csv文件,则无法获得所需的正确输出。

1 个答案:

答案 0 :(得分:0)

似乎您想检查列B是否具有任何值。如果是,请将其保留;否则,将A列的值放在此处,可以使用ifelse:

df$B <- ifelse(df$B == "", df$A, df$B)