我有一份NBA球员得分的列表,它跨越了几天。我的目标是确定哪些球员在同一天一起得分很好
我的数据集包含日期、球员姓名、球队和得分列:
Date Team Name Points
2020-12-22 LAL Dennis Schroder 43
2020-12-22 LAL LeBron James 35
2020-12-22 LAL Kyle Kuzma 15.75
2020-12-23 LAL Dennis Schroder 22
2020-12-23 LAL LeBron James 23.25
2020-12-23 LAL Kyle Kuzma 39.75
2020-12-24 LAL Dennis Schroder 40
2020-12-24 LAL LeBron James 55.25
2020-12-24 LAL Kyle Kuzma 7
理想情况下,我将能够筛选到一个团队,并运行类似于df.T.corr()
的操作,将球员姓名的汇总列表放入一个矩阵中,与同一团队中的其他球员进行比较
import pandas as pd
df = pd.read_csv("https://docs.google.com/spreadsheets/d/e/2PACX-1vSqawsLtGqzIoptqIXY8MLF0TlLtMSoiXuE2EM3HgiAXrbXCnYTSSfI5pF0KYuzH_lYKU00dU6ED_76/pub?gid=0&single=true&output=csv")
playerdf = df[['Name', 'Date', 'Points', 'Team']]
playerdf = playerdf[playerdf['Team']=='LAL']
playerdf.corr() #only correlates the columns to each other
playerdf.T.corr() #returns an empty dataframe
在我的例子中,似乎一个相关矩阵将显示勒布朗和丹尼斯之间的正相关,并且与两个球员的KYL呈负相关。p>
相关性只适用于数值变量。当你观察相关性时,你本质上是在问,“当x增加/减少时,y增加/减少了吗?”
你的问题是正确的,“随着勒布朗·詹姆斯的得分增加/下降,球员B的分数增加/减少。”但是你的数据没有被设置成这样。我很好奇他们是怎么得分的
我们需要旋转,以便每个实例/行是日期/游戏,列是球员姓名,值是得分。一旦您这样做了,您就可以将其放入
.corr()
方法中因此,仅使用2个游戏/日期的数据,您不会看到太多内容:
输出:
如果我回去得到一个完整的季节值:
然后您可能会发现一些相关性:
输出:
热图:
相关问题 更多 >
编程相关推荐