【发布时间】:2023-09-11 18:24:01
【问题描述】:
我目前正在做一个项目,我有一个巨大的数据框,16196 个 obs 的 25 个变量。目标是消除每个特定处理的数据框中可能存在的任何异常值。问题在于带有治疗的列中包含每种治疗,并且每种治疗具有不同的长度,它们持续。让我给你举个例子。
val_lvl2: chr "Cervical Fusion (Spinal Fusion)" "Non-Surgical Treatment" "Non-Surgical Treatment" "Non-Surgical Treatment" ...
prd_num_of_days_num: num 167 46 46 46 167 46 46 46 167 46 ...
输出来自 str(z_combined_cost_dtrmnt)
我们可以看到 val_lvl2 有所有的处理(100+ 未显示)。并且 prd_num_of_days_num 具有特定治疗的长度。现在我想做的是将所有(那里有更多)“宫颈融合”数据和“非手术治疗”数据合并到自己的小数据框中。之后,我想对治疗的长度建立 95% 的置信度,然后删除任何不属于该 CI 的数据行。然后带回数据框,以便我们再次拥有 1 个大数据框,但每次处理中的异常值都消失了。
我将不胜感激,因为我真的不知道从哪里开始,因为似乎没有简单的方法可以按照我想要的方式分解数据框。
目前正在考虑使用聚合函数。
agg
但是,这会导致此错误:aggregate.data.frame(as.data.frame(x), ...) 中的错误:由多个实际参数匹配的形式参数“by”
TL/DR
大数据框 -->
基于 val_lvl2 中唯一值的较小数据框,请记住存在相似的唯一值,即“宫颈融合”的多个实例应该在同一个小数据框中 -->
根据prd_num_of_days_num(治疗长度)为每个小数据框创建一个95% CI -->
如果 prd_num_of_days_num 在 CI 之外,则删除每个唯一值的整行 -->
将没有异常值的小数据框再次合并为一个大数据框。
【问题讨论】:
-
欢迎来到 *。请提供minimal reproducible example
-
嘿@StevenBeaupré!我目前的想法是可能尝试聚合。这是我到目前为止所拥有的。 agg
标签: r data-manipulation confidence-interval bigdata