将R中的2个因子合并为大数。水平

时间:2014-04-08 18:15:43

标签: r

我有一个大小为13 GB的纯文本格式文件data_table_complete,包含100多列,其中1列有与color相关的列。

当我使用命令levels(data_table_complete$color)时, 544级别

在主要搜索中,我发现1个级别命名为"OTHERS",包含大约4000个奇数项目,另一个级别为"OTHETRS",包含大约600个奇数项目,这可能是前者的拼写错误。

所以我想将它们合并为"OTHERS",但我发现可能存在数据丢失。

任何人都可以指导我如何完成这项任务吗?

1 个答案:

答案 0 :(得分:1)

所以我们说这是你的数据框

df <- data.frame(color = factor(c(rep("red",4), rep("OTHERS", 4),rep("blue", 5), rep("OTHETRS",5))))
table(df$color)
#blue  OTHERS OTHETRS     red 
#   5       4       5       4 

你可以简单地做

df$color <- factor(ifelse(df$color == "OTHERS" | df$color == "OTHETRS", "OTHETRS", as.character(df$color)))
table(df$color)
#blue OTHETRS     red 
#   5       9       4