如何将 matplotlib 直方图数据显示为 table?
How to display matplotlib histogram data as table?
所以我只是想学习 Python 并构建了一个看起来像这样的直方图:
我一直在疯狂地想弄清楚如何以 table 格式显示相同的数据,即:
0-5 = 50,500
5-10 = 24,000
10-50 = 18,500
等等...
df只有一个字段,里面是towns/cities的居民人数。非常感谢任何帮助。
编辑:
从重复的问题答案...我得到一个错误
bins = [0,5,10,50,150,500,2500,5000,8000]
groups = df.groupby(['Total_Residents', pd.cut(df.Total_Residents, bins)])
groups.size().unstack()
AttributeError Traceback(最近调用最后)
在 ()
1 箱 = [0,5,10,50,150,500,2500,5000,8000]
----> 2 组 = df.groupby(['Total_Residents', pd.cut(df.Total_Residents, bins)])
3 groups.size().unstack()
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\generic.py in getattr(self, name)
4370 如果 self._info_axis._can_hold_identifiers_and_holds_name(姓名):
4371return自我[名字]
-> 4372 return object.getattribute(self, name)
4373
4374 def setattr(自身、名称、值):
AttributeError: 'Series' object has no attribute 'Total_Residents'
编辑:对于示例数据,您可以使用 bin 值 +1
df = pd.Series([1,6,11,51,151,501,2501,5001,8001], 名称 = 'Total_Residents')
但是顺便说一句,我的数据并不是导致问题的原因。这是因为我正在使用 pandas 的函数,用于一系列数据的数据帧。
想通了。我实际上无法将 'series' 转换为数据框,但 pandas 能够处理系列:
bins = [0,5,10,50,150,500,2500,5000,8000]
df.value_counts(bins=bins)
我需要使用 value_counts 功能。
只有当我有另一列作为数据分组依据时,我才能使用建议的重复答案。
所以我只是想学习 Python 并构建了一个看起来像这样的直方图:
我一直在疯狂地想弄清楚如何以 table 格式显示相同的数据,即:
0-5 = 50,500
5-10 = 24,000
10-50 = 18,500
等等...
df只有一个字段,里面是towns/cities的居民人数。非常感谢任何帮助。
编辑:
从重复的问题答案...我得到一个错误
bins = [0,5,10,50,150,500,2500,5000,8000]
groups = df.groupby(['Total_Residents', pd.cut(df.Total_Residents, bins)])
groups.size().unstack()
AttributeError Traceback(最近调用最后) 在 () 1 箱 = [0,5,10,50,150,500,2500,5000,8000] ----> 2 组 = df.groupby(['Total_Residents', pd.cut(df.Total_Residents, bins)]) 3 groups.size().unstack()
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\generic.py in getattr(self, name) 4370 如果 self._info_axis._can_hold_identifiers_and_holds_name(姓名): 4371return自我[名字] -> 4372 return object.getattribute(self, name) 4373 4374 def setattr(自身、名称、值):
AttributeError: 'Series' object has no attribute 'Total_Residents'
编辑:对于示例数据,您可以使用 bin 值 +1
df = pd.Series([1,6,11,51,151,501,2501,5001,8001], 名称 = 'Total_Residents')
但是顺便说一句,我的数据并不是导致问题的原因。这是因为我正在使用 pandas 的函数,用于一系列数据的数据帧。
想通了。我实际上无法将 'series' 转换为数据框,但 pandas 能够处理系列:
bins = [0,5,10,50,150,500,2500,5000,8000]
df.value_counts(bins=bins)
我需要使用 value_counts 功能。
只有当我有另一列作为数据分组依据时,我才能使用建议的重复答案。