根据需求筛选数据
import pandas as pd
def age_18_to_30(age):
return 18<=age<30
def leave_A(score):
return 85<=score<=100
stu=pd.read_excel('E:\\工作日志\\Python\\ExcelResource\\filter.xlsx',index_col='ID')
stu=stu.loc[stu['Age'].apply(age_18_to_30)]
stu=stu.loc[stu.Age.apply(age_18_to_30)]
stu=stu.loc[stu['Age'].apply(age_18_to_30)].loc[stu['Score'].apply(leave_A)]
stu=stu.loc[stu['Age'].apply(lambda age:18<=age<30)].loc[stu['Score'].apply(lambda score:85<=score<=100)]
print(stu)
绘制柱状图-利用pandas绘制
import pandas as pd
import matplotlib.pyplot as pl
stu=pd.read_excel('E:\\工作日志\\Python\\ExcelResource\\field.xlsx')
stu.sort_values(by='Number',inplace=True,ascending=False)
stu.plot.bar(x='Field',y='Number',color='orange',title='Students Field')
pl.show()
绘制柱状图-利用matplotlib绘制
import pandas as pd
import matplotlib.pyplot as pl
stu=pd.read_excel('E:\\工作日志\\Python\\ExcelResource\\field.xlsx')
stu.sort_values(by='Number',inplace=True,ascending=False)
pl.bar(stu.Field,stu.Number,color='orange')
pl.xticks(stu.Field,rotation='90')
pl.xlabel('Field')
pl.ylabel('Number')
pl.title('Students Field',fontSize=16)
pl.show()
绘制柱状图-两组数据比较
import pandas as pd
import matplotlib.pyplot as pl
stu=pd.read_excel('E:\\工作日志\\Python\\ExcelResource\\compare.xlsx')
stu.sort_values(by='2016Year',inplace=True,ascending=True)
stu.plot.bar(x='Field',y=['2016Year','2017Year'],color=['green','red'])
pl.title('Students Field',fontsize=16)
pl.xlabel('Field')
pl.ylabel('Number')
pl.gca().set_xticklabels(stu.Field,rotation='45',ha='right')
pl.gcf().subplots_adjust(left=0.2,bottom=0.4)
pl.show()
绘制柱状图-叠加柱状图
import pandas as pd
import matplotlib.pyplot as pl
user=pd.read_excel('E:/工作日志/Python/ExcelResource/overlay.xlsx',index_col='ID')
user['Total']=user['Oct']+user['Nov']+user['Dec']
user.sort_values(by