我有以下数据帧的摘录,它表示篮球比赛的逐场比赛:
import pandas as pd
data = {'actionNumber':
[669,668,667,666,665,663,662,661,660,659,657,656,655], 'gt':['03:12','03:12','03:18','03:18','03:36','03:48','03:48','03:48','03:48','03:51','03:51','03:55','03:58'], 'actionType':['steal','turnover','assist','3pt','2pt','freethrow','freethrow','foulon','foul','steal','turnover','rebound','2pt'], 'player':['S. WOHLWEND','F. DELLA MEA','Z. RIAUKA','A. VIOTTI','J. VIANA','A. VIOTTI','A. VIOTTI','A. VIOTTI','E. GONZALEZ','A. VIOTTI','A. ARISTIMUNO','P. BLACKWELL','A. VIOTTI'], 'tno':['1', '2','1','1','2','1','1','1','2','1','2','2','1']}
df = pd.DataFrame(data)
df
我想确定每个队有一个位置的时间。在tno列中,你基本上可以看到哪个团队有posession,所以我的目的是遍历pandas,从最后一行开始,将其标记为posession one,然后转到下一行,将tno有2的所有行标记为posession 2,之后,当tno变为1时,将其标记为posession 3,然后重复这个动作,直到我计算并标记出所有不同的位置;最后我可以得到每个季度每个团队每个位置的平均值,看看哪个团队的位置更快,等等
我已经尝试过for循环,我可以这样做,但我正在努力学习熊猫,在每一个部分,我看到循环应该避免,我成功地做了同样的部分使用轮班,但我不知道如何使用轮班,你不知道有多少发挥将持续每一个职位。你知道吗
我期待以下内容:
data = {'actionNumber':
[669,668,667,666,665,663,662,661,660,659,657,656,655], 'gt':['03:12','03:12','03:18','03:18','03:36','03:48','03:48','03:48','03:48','03:51','03:51','03:55','03:58'], 'actionType':['steal','turnover','assist','3pt','2pt','freethrow','freethrow','foulon','foul','steal','turnover','rebound','2pt'], 'player':['S. WOHLWEND','F. DELLA MEA','Z. RIAUKA','A. VIOTTI','J. VIANA','A. VIOTTI','A. VIOTTI','A. VIOTTI','E. GONZALEZ','A. VIOTTI','A. ARISTIMUNO','P. BLACKWELL','A. VIOTTI'], 'tno':['1','2','1','1','2','1','1','1','2','1','2','2','1'],'pn': ['7','6','5','5','4','3','3','3','','3','2','2','1']}
df = pd.DataFrame(data)
df
其中pn是posession编号(忽略第57b行对于这个问题并不重要),因此我可以获得每个posession的最后一个,它是如何结束的,等等
这里是另一个尝试打破步骤。你知道吗
输出
相关问题 更多 >
编程相关推荐