pandas 数据框的直方图
Histogram of a pandas dataframe
我在网站上找不到类似的问题。
我有一个相当大的文件,超过 100000 行,我使用 pandas:
读取它
df = pd.read_excel("somefile.xls",index_col='Offense Type')
最终得到一个由第一列(索引列)和另一列组成的数据框,分别为 'Offense_type' 和 'Hour'。
'Offense Type' 由一系列 "cathegories" 组成,例如 cat1、cat2、cat3 等...
'Hour' 由 1 到 24 之间的一系列整数组成。
我想做的是获取数据框中每个数字出现的直方图(没有那么多分类,最多 10 个)
这是我想要得到的 ASCII 表示形式
(x 代表直方图中的条形,它们的值肯定会比 1,2 或 3 高得多)
x x # And so on
x x x x x x #
x x x x x x x #
1 2 11 20 5 8 18 #
Cat1 Cat2 #
但我使用以下方法为 df 中的每一行获取一个条形图:
df.plot(kind='bar')
这基本上是不可读的:
我也试过 hist() 和 Histogram() 函数,但没有成功。
这是一些示例数据:
经过漫长的一夜,我得到了答案,因为每个事件只发生一次,我在文件中添加了一个额外的第一列,然后通过这个索引数据框:
df = pd.read_excel("somefile.xls",index_col='Numberone')
然后简单地尝试了这个:
df.hist(by=df['Offense Type'])
终于如愿以偿
我在网站上找不到类似的问题。
我有一个相当大的文件,超过 100000 行,我使用 pandas:
读取它df = pd.read_excel("somefile.xls",index_col='Offense Type')
最终得到一个由第一列(索引列)和另一列组成的数据框,分别为 'Offense_type' 和 'Hour'。
'Offense Type' 由一系列 "cathegories" 组成,例如 cat1、cat2、cat3 等... 'Hour' 由 1 到 24 之间的一系列整数组成。
我想做的是获取数据框中每个数字出现的直方图(没有那么多分类,最多 10 个)
这是我想要得到的 ASCII 表示形式
(x 代表直方图中的条形,它们的值肯定会比 1,2 或 3 高得多)
x x # And so on
x x x x x x #
x x x x x x x #
1 2 11 20 5 8 18 #
Cat1 Cat2 #
但我使用以下方法为 df 中的每一行获取一个条形图:
df.plot(kind='bar')
这基本上是不可读的:
我也试过 hist() 和 Histogram() 函数,但没有成功。
这是一些示例数据:
经过漫长的一夜,我得到了答案,因为每个事件只发生一次,我在文件中添加了一个额外的第一列,然后通过这个索引数据框:
df = pd.read_excel("somefile.xls",index_col='Numberone')
然后简单地尝试了这个:
df.hist(by=df['Offense Type'])
终于如愿以偿