我有新冠肺炎变异的数据,以及每周对特定变异进行测序的基因序列比例(模拟数据如下).
df <- data.frame(
Week_Count = seq(1,3),
"Omicron BN.1" = c(0.05, 0.05, 0.10),
"Omicron BA.5" = c(0.75, 0.50, 0.65),
"Omicron CH.1" = c(0.10, 0.25, 0.10),
Other = c(0.10, 0.20, 0.15))
> df
Week_Count Omicron.BN.1 Omicron.BA.5 Omicron.CH.1 Other
1 1 0.05 0.75 0.10 0.10
2 2 0.05 0.50 0.25 0.20
3 3 0.10 0.65 0.10 0.15
我想要做的是识别保持在阈值以下的列--在本例中,识别其观测值不超过0.1的变量(即,识别小于或等于0.1的列观测值),并且对于那些保持小于或等于0.1的列,将它们分类/添加到Other
列(这意味着不应该改变/重新分类Other
).重要的是要注意,即使有1个大于0.1的观测值的列也应该保持数据集中的原样(以Omicron.CH.1
为例).理想的输出将如下所示:
Week_Count Omicron.BA.5 Omicron.CH.1 Other
1 1 0.75 0.10 0.15
2 2 0.50 0.25 0.25
3 3 0.65 0.10 0.25
在我看来,这可能是一个复杂的代码,您介意解释一下您的解决方案吗?非常感谢.