我有三个分类变量,即中风、心肌梗死和血压,其值分别为0=是和1=否.我想将它们合并,在这三个变量中生成一个新变量"cvd",其中每一行的0值在新的心血管变量中为0.例如:

Stroke  MI  BP  CVD
0       1    1   0
1       1    1   1
1       1    0   0

我try 了以下代码,但这不是我想要的

transform(koratest, cvd=paste(stroke,MI, BP))

有人能帮个忙吗? playbook 是什么?

最好的

推荐答案

另一种方式:

library(dplyr)

df <- data.frame(Stroke = c(0,1,1),
                   MI = c(1,1,1),
                   BP = c(1,1,0))

df %>% 
  rowwise() %>% 
  mutate(
    CVD = min(Stroke, MI, BP) 
  ) %>% 
  ungroup()

#> # A tibble: 3 × 4
#>   Stroke    MI    BP   CVD
#>    <dbl> <dbl> <dbl> <dbl>
#> 1      0     1     1     0
#> 2      1     1     1     1
#> 3      1     1     0     0

reprex package(v2.0.1)于2022-07-11创建

R相关问答推荐

extract()函数不处理stanfit对象,我用错了吗?

确定邻国

使用lares::corr_var函数在for循环中分配变量的问题

使用gsim删除特殊词

按崩溃类别分类的指数

管道末端运行功能

如果列中存在相同的字符串,则对行值进行总和

使用tidyverse方法绑定行并从一组管道列表执行左连接

如何自定义Shapviz图?

如何计算前一行的值,直到达到标准?

在不安装软件包的情况下测试更新

如何编辑ggplot的图例字使用自定义对象(gtable)?'

如何写一个R函数来旋转最后n分钟?

从多个线性回归模型中提取系数

在多页PDF中以特定布局排列的绘图列表不起作用

我如何go 掉盒子图底部的数字?

我需要使用ggplot2制作堆叠条形图

如何在R中创建条形图,使条形图在y轴上围绕0.5而不是0构建条形图?

是否有一个R函数可以输出在输入的字符向量中找到的相应正则表达式模式?

抽样变换-REXP与RWEIBUR