我在 R 中有一个包含 5 列的大型数据框。第一列包含从 0 到 200 的数字列表。第二列包含要加权的数字列表,第三列包含第二列中项目的权重。我的问题是我想将第一列分成几个部分:(0,50]、(50,100]、(100,150] 和 (150,200]),然后找到每个区间中数据的加权平均值。
我可以先将数据单独划分为这些区间,然后创建一个新数据框,然后计算每个新数据框中第二和第三列向量的加权平均值,但这需要我四次遍历数据并使用一个和我一样大的数据框,效率太低了。此外,对于未来的功能,我将需要更多的间隔,因此需要更长的时间。
有没有什么办法可以把它分成一次运行?