Python-绘制matplotlib柱状图,在数据上有2个条件

Python-绘制matplotlib柱状图,在数据上有2个条件,python,matplotlib,plot,conditional-statements,histogram,Python,Matplotlib,Plot,Conditional Statements,Histogram,我试图在数据上绘制一个带有两个条件的直方图,因为它会带来一些噪声,我想忽略小于5且大于100的值,所以当我绘制时,我尝试使用:“data[data>5.且data5,数据

我试图在数据上绘制一个带有两个条件的直方图,因为它会带来一些噪声,我想忽略小于5且大于100的值,所以当我绘制时,我尝试使用:“data[data>5.且data<100.” 但是它不起作用。。。 我得到这个错误消息:“包含多个元素的数组的真值不明确。请使用a.any()或a.all()

将numpy导入为np
将matplotlib.mlab导入为mlab
将matplotlib.pyplot作为plt导入
导入csv
Elements=open(“C:/…/Desktop/test.txt”、“r”)
data=np.genfromtxt(元素,跳过标题=0)
元素。关闭()
fig=matplotlib.pyplot.gcf()
图设置尺寸英寸(7,5.3)
数量=75
#数据的直方图
n、 容器,补丁=plt.hist(数据[数据>5,数据<100.]*1.78,数量容器,facecolor='blue',alpha=0.5)
plt.xlabel('Feret',fontsize=18)
plt.ylabel('频率',字体大小=18)
plt.xlim(0,50.)
plt.tick_参数(axis='both',其中='major',labelsize=14)
#plt.tick_参数(axis='both',which='minor',labelsize=8)
#plt.title(r'智商直方图:$\mu=100$,$\sigma=15$)
plt.savefig('Hist_GS_ext.png',dpi=1000)
#调整间距以防止剪裁标签
plt.子批次调整(左=0.15,下=0.2)
plt.show()

您试图执行元素逻辑AND,但使用了错误的语法。使用
&
而不是
,并将各个表达式封装到括号中:

 data[(data>5.) & (data<100.)]

下次试着自己做一些探索:你到底有什么问题。例如,在这里,它与95%或您的代码无关:它只是numpy数组的逻辑索引。你的问题代码可以是3行。
 data[(data>5.) & (data<100.)]
data[np.logical_and(data>5., data<100.)]