您好,希望我可以简单地解释一下。我知道这可以通过循环来完成,但这将花费很长时间,我需要将此分析作为网页的一部分来完成,因此某种应用功能应该会更好地工作。
我有 2 个数据框。数据框 A 有一个不同的“锚点”列表和每个类别值(这些是来自已经执行的 ddply 的加权平均值)。
anchor ecomax ecomin volume price runtime
1 9482 0.12981362 0.5714286 0.12981362 0.1324330 1.00000000
2 9488 0.01458662 0.5544864 0.01458662 0.2967270 0.04166667
3 9549 0.09734398 0.5721429 0.09734398 0.1219376 1.00000000
4 9574 0.00902656 0.5505136 0.00902656 0.1455307 0.14652568
5 9575 0.00902656 0.5505136 0.00902656 0.1460919 0.14652568
6 9576 0.07608863 0.5613563 0.07608863 0.1114813 1.00000000
数据框 B 是具有相同类别值的较大数据框(暂时忽略名称),但每个锚点有多个条目。
anchor ecomax_max_med ecomin_min_med volume_med price_med run_time_minimum_med
1 9482 0.12981362 0.5714286 0.12981362 0.1120882 1.00000000
2 9482 0.12981362 0.5714286 0.12981362 0.1686777 1.00000000
3 9488 0.01552049 0.5550000 0.01552049 0.2925363 0.04166667
4 9488 0.01292292 0.5535714 0.01292292 0.3041928 0.04166667
5 9549 0.09734398 0.5721429 0.09734398 0.1238916 1.00000000
6 9549 0.09734398 0.5721429 0.09734398 0.1184564 1.00000000
我想根据匹配的锚点从平均值(数据框 A)中减去 B 的类别值;即 B 的前 2 行(锚 9482)将与 A 的第一行(锚 9482 均值)不同,接下来的 2 行 B(锚 9488)将与 A 的下一行(锚 9488 均值)不同, 等等。
最终结果是使新数据帧 C 的每一行/列(锚点除外)成为数据帧 B 中的值与其对应的锚点均值(数据帧 A)之间的差异。我希望这是相当直截了当的;它可以很容易地通过一个冗长的循环来完成。我猜这需要“匹配”或“按”的某种组合,但我不确定,这非常令人沮丧。帮助!