我的问题和这个one有关。然而,那里的解决方案对我不起作用。你知道吗
我有一个数据帧df
,如下所示。我想取elevation
和width
的加权平均值,用counts
作为权重,按building
和day
分组。我该怎么做?你知道吗
#Sample data
import pandas as pd
df = pd.DataFrame({
'building': ['A1', 'A1', 'A1', 'A1'],
'day': ['2019-07-02', '2019-07-02', '2019-07-03', '2019-07-03'],
'id': ['alak', 'ldau', 'laud', 'lkdu'],
'counts': [1, 2, 3, 7],
'elevation': [5.7, 7.8, 8.7, 6.9],
'width':[1.2, 2.4, 3.4, 2.7]
})
df
building day id counts elevation width
0 A1 2019-07-02 alak 1 5.7 1.2
1 A1 2019-07-02 ldau 2 7.8 2.4
2 A1 2019-07-03 laud 3 8.7 3.4
3 A1 2019-07-03 lkdu 7 6.9 2.7
# What I want to get:
building day elevation width
0 A1 2019-07-02 7.1 2.0
1 A1 2019-07-03 7.4 2.9
您可以按以下步骤进行:
结果是:
我想有更好的方法,但这确实做到了:
输出:
您可以使用
reindex
和repeat
的技巧相关问题 更多 >
编程相关推荐