作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在data.frame中有以下四个变量,该变量持续数千行:
One Two Three Four
TRUE TRUE FALSE FALSE
FALSE TRUE TRUE TRUE
TRUE FALSE FALSE TRUE
TRUE TRUE TRUE FALSE
FALSE TRUE FALSE TRUE
FALSE FALSE TRUE FALSE
TRUE FALSE FALSE TRUE
我想创建两个新变量,一个合并第一和第二列,第二合并第三和第四列。因此,如果两列中的任何一个或两个都显示为TRUE,则每个新列都将显示TRUE,而如果两个列都为false,则每个新列将显示FALSE。结果数据如下所示:
One Two OneTwo Three Four ThreeFour
TRUE TRUE TRUE FALSE FALSE FALSE
FALSE TRUE TRUE TRUE TRUE TRUE
TRUE FALSE TRUE FALSE TRUE TRUE
TRUE TRUE TRUE FALSE FALSE FALSE
FALSE FALSE FALSE FALSE TRUE TRUE
FALSE FALSE FALSE TRUE FALSE TRUE
TRUE FALSE TRUE FALSE TRUE TRUE
任何帮助将非常感激。我已经浏览了其他一些问题,但是找不到具体的操作方法。
最佳答案
使用dplyr
包,您可以执行以下操作:
library(dplyr)
data <- data %>% mutate(
OneTwo = as.logical(One + Two),
ThreeFour = as.logical(Three + Four))
这是可行的,因为
TRUE
和
FALSE
实际上已由计算机保存为1和0。然后,R将大于0的值编码为
TRUE
。为了更加“正确”,您还可以使用以下代码在将0和1转换为逻辑之前取回0和1:
library(dplyr)
data <- data %>%
mutate(
OneTwo = as.logical(pmax(One, Two)),
ThreeFour = as.logical(pmax(One, Two)))
关于r - 如何在R中合并两个true/false变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62969379/
我是一名优秀的程序员,十分优秀!