【发布时间】:2017-06-12 16:08:03
【问题描述】:
我有一个自 1950 年以来 NBA 每位球员及其统计数据的数据集。数据集中的列包括年份(适用年份)、球员姓名和他所在球队的那一年、在 NBA 的年份以及每位球员职业生涯中每一年的 20 列不同统计数据。其中一列是“PTS”,即玩家当年得分的总分。我想在 Python 中创建一个散点图,在 x 轴上显示 1950 年到 2017 年,在 y 轴上显示当年得分的总分。我认为返回每个赛季总分的最有效方法是:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
seasons = pd.read_csv('C:/windows/temp/Seasons_Stats.csv')
tp_yr = seasons.groupby('Year').agg({'PTS': ['sum']})
但是使用以下方法创建散点图:
tp_yr.plot.scatter( x= 'Year', y = 'PTS', s = 'None', c='red')
返回:
KeyError: '年份'
和一个空白图表 我想用红色散点图表示从 1950 年到 2017 年所有年份的总分。
【问题讨论】:
-
“我遇到问题”不是一个充分的问题描述。具体一点:数据框中的列是什么?最终的情节应该显示什么(什么是 x 轴,什么是 y 轴,点应该代表什么?),你试图创建这样的情节是什么?问题是什么?它在多大程度上与您的期望不符,或者您是否遇到错误?如您所见,未决问题列表比您的问题本身要长。请edit 让它负责。
-
感谢我编辑了帖子以更清晰
-
转换“年份”列将解决您发布的错误。 (参见:stackoverflow.com/questions/35432918/…)要回答其他问题,您需要展示更多代码。
-
谢谢,我已经展示了我的其余代码,其中包含一些我在绘制 pandas Dataframes 时发现的信息的更新,但它仍然不能像我需要的那样工作,建议?
标签: python pandas matplotlib