按范围分组数据,而不是R中的所有数字数据

按范围分组数据,而不是R中的所有数字数据,r,range,R,Range,我有一个数据集,其中有一列数字代表医疗代码 第一组 一百 二百 四百 510 430 330 V220 E560 我想把这些人分成代表他们所属类别的小组。例如,100-200将在“传染性”列中,400-550将在“肿瘤”列中,等等。 如何处理以字母开头的代码?我们可以使用cut,然后对原始数据使用coalecse library(dplyr) newgrp <- with(df1, as.character(cut(as.numeric(Group1), breaks = c(-Inf,

我有一个数据集,其中有一列数字代表医疗代码

第一组

  • 一百
  • 二百
  • 四百
  • 510
  • 430
  • 330
  • V220
  • E560
  • 我想把这些人分成代表他们所属类别的小组。例如,100-200将在“传染性”列中,400-550将在“肿瘤”列中,等等。
    如何处理以字母开头的代码?

    我们可以使用
    cut
    ,然后对原始数据使用
    coalecse

    library(dplyr)
    newgrp <- with(df1, as.character(cut(as.numeric(Group1), breaks = c(-Inf, 100, 200, 300, 400, 550, Inf),
           labels = c("categ1", "Infectious", "categ2", "categ3", "Neoplasm"))))
    
    coalesce(newgrp, df1$Group1)
    
    库(dplyr)
    
    你想怎么对付他们?V220是否属于201-300范围,或者是否存在“V”范围,或者其他什么?所有以字母开头的字母与数字不在同一类别中。它们属于自己的类别,所以任何带有字母的东西都是它自己的类别,或者每个字母定义一个类别?比如,如果有V220和V880,它们是被归为V类,还是分开的类别?或者所有以字母开头的字母都属于同一个类别?所有以字母开头的字母都属于同一类别,这将是一个标记为“其他”的类别。不管它以什么字母开头。这个例子只是几个条目,有65000个条目,数字范围从001到999,还有一些以字母开头。所以在300到400之间,我只想要325到400,不是300到400。@CrnDg我想在转换为
    数值
    后,您需要一个
    过滤器
    ,或者更改
    标签
    。我不清楚。@CrnDg 300和325之间的值会发生什么变化。那些被移除或更改为NAThey的人需要进入“其他人”中category@CrnDg然后,相应地更改
    中断
    标签
    ,即
    中断=c(-Inf,100200300325400550,Inf),标签=c('categ1','infectious','categ2','Other','categ3',…