从csv数据制作直方图

时间:2017-12-21 22:48:59

标签: python pandas numpy matplotlib histogram

我试图用.CSV文件中的数据制作直方图。我把下面的代码放在一起,我得到了一个'' int'对象不可迭代'当我运行它时出错,有什么想法吗?

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

file = "...sp histo.csv"
data = pd.read_csv(file)

year_2016 = np.array(data['2016'])
year_2017 = list(np.array(data['2017']))

small_ret = min(min(year_2016),min(year_2017))
large_ret = max(max(year_2016),max(year_2017))
bins = np.arange(small_ret, large_ret, 0.1)

plt.hist(year_2017,bins=bins, range = 20)
plt.show()

1 个答案:

答案 0 :(得分:1)

这一行存在问题:

plt.hist(year_2017,bins=bins, range = 20)

根据hist的文档字符串,范围必须是元组

range : tuple or None, optional
    The lower and upper range of the bins. Lower and upper outliers
    are ignored. If not provided, `range` is (x.min(), x.max()). Range
    has no effect if `bins` is a sequence.

    If `bins` is a sequence or `range` is specified, autoscaling
    is based on the specified bin range instead of the
    range of x.