# pandas.cut() 也同样是一个方便的方法,用来将数据进行强制的分箱 # 将一系列数值分成若干份 #cut()方法,参数bin指明切分区间,左开右闭区间。 import numpy as np from pandas import Series,DataFrame ages=list(df.年龄) bins=[0,29,39,49,50,np.inf] #范围 labels=["少年","青年组","中青年组","中年组","中老年组"] groups=pd.cut(ages,bins=bins,labels=labels) data=groups.value_counts() #qcut()方法,不需要事先指明切分区间,只需要指明切分个数。 # pd.qcut(ages,6).value_counts() df1=DataFrame(data,columns=["病例数"]) plt.subplot(1,1,1) x=labels y=df1["病例数"].values plt.bar(x,y,width=0.5,align="center") plt.title("深圳市患者按年龄分组",loc="center") for a,b in zip(x,y): plt.text(a,b,b,ha="center",va="bottom",fontsize=12)