在R中同时将“1”替换为“0”和“0”替换为“1”
我在 R 中有一个字符向量,例如:
> row
"1/1" "0/0" "0/0" "1/1" "0/1" "0/0" "1/0"
我想交换“1”和“0”字符以返回一个向量:
> row2
"0/0" "1/1" "1/1" "0/0" "1/0" "1/1" "0/1"
我觉得这是一项简单的任务,但我感到困惑,因为我假设多次调用gsub例如会在第二次调用时逆转转换过程。
关于基于 R 的解决方案的任何想法?谢谢!
回答
您可以使用chartr:
row <- c("1/1", "0/0", "0/0", "1/1", "0/1", "0/0", "1/0" )
chartr('01', '10', row)
#[1] "0/0" "1/1" "1/1" "0/0" "1/0" "1/1" "0/1"
- "There is always a base R function for it I almost surely forgot about" 🙂 Equivalent to / inspired by the command-line `tr` command I suppose.