从csv数据制作直方图

问题描述 投票:0回答:1

我正在尝试使用.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()
python pandas numpy matplotlib histogram
1个回答
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.
© www.soinside.com 2019 - 2024. All rights reserved.