我有一个数据帧df
与发言权柱a
和b
,我想列之间交换的值的长度,如果一个值的长度是3个以上交换两个条目根据在数据帧
输入:
a b
1 23
2 44
3 43324
4 76
预期输出:
a b
1 23
2 44
43324 3
4 76
我想的有点像如下:
df <- transform(df, df$a = ifelse(length(df$b) > 3, a, b), df$a = ifelse(length(df$b) > 3, b, a))
但是这并没有工作,我知道我必须使用类似df[length(df$a)]
,但我无法弄清楚这一点。对于那些好奇的人来说,输入基本上是一个通话报告,有时在输入数据时,他们交换了单元号码(10位数字)和ID号码(4位数字)。
非常感谢你为这个!我真的很喜欢你使用列名而不是索引,可以很容易地修改其他人 –