擅长:python、mysql、java
<p>我模拟了我自己的数据,为你的问题做了一个简单的测试。我创建了一组名为df_inducted的玩家,其中包括最终加入的玩家,通过使用isin()函数,我们可以确保在分析中只考虑他们。然后我求出他们约会的最小值和最大值,并求出它们的平均值。在</p>
<pre><code>import pandas as pd
df = pd.DataFrame({'player':['Nate','Will','Nate','Will'],
'inducted': ['Y','Y','N','N'],
'date':[2014,2000,2011,1999]})
df_inducted = df[df.inducted=='Y']
df_subset = df[df.player.isin(df_inducted.player)]
maxs = df_subset.groupby('player')['date'].max()
mins = df_subset.groupby('player')['date'].min()
maxs = pd.DataFrame(maxs)
maxs.columns = ['max_date']
mins = pd.DataFrame(mins)
mins.columns = ['min_date']
min_and_max = maxs.join(mins)
final = min_and_max['max_date'] - min_and_max['min_date']
print "average time:", final.mean()
</code></pre>