0
我試圖更好地理解熊貓集團的業務。使用熊貓集團的業務
作爲一個例子,假設我有一個數據框,其中包含在網球比賽中進行的一系列比賽。
tennis_sets = pd.DataFrame.from_items([
('date', ['27/05/13', '27/05/13', '28/05/13', '28/05/13',
'28/05/13', '29/05/13', '29/05/13']),
('player_A', [6, 6, 2, 6, 7, 6, 6]),
('player_B', [4, 3, 6, 7, 6, 1, 0])
])
在
date player_A player_B
0 27/05/13 6 4
1 27/05/13 6 3
2 28/05/13 2 6
3 28/05/13 6 7
4 28/05/13 7 6
5 29/05/13 6 1
6 29/05/13 6 0
得到的,我想,以確定總體得分每場比賽在某一天播放。這應該看起來像
date player_A player_B
0 27/05/13 2 0
1 28/05/13 1 2
2 29/05/13 2 0
所以,我可能會創建一個新的numpy的陣列和迭代如下做到這一點:
matches = tennis_sets.groupby('date')
scores = np.zeros((len(matches),2))
for i, (_, match) in enumerate(matches):
a, b = match.player_A, match.player_B
scores[i] = np.c_[sum(a>b), sum(b>a)]
我可以然後重新裝這個新的成績數組的日期。但是,這似乎不太可能是做事的首選方式。
要創建一個新的數據框,每個日期和匹配分數如上,有沒有更好的方法,我可以使用pandas'api來實現這個目標?