Python数据分析小练习

import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.pyplot import axis

def get_985(jd_tmp,tmp):
    jd_985=[]
    for i in range(len(jd_tmp)):
        if(tmp[i]=='√'):
            jd_985.append(jd_tmp[i])
    return jd_985

def get_school_dict(school_set,school_value):
    dict_school={}
    for i in range(0,len(school_set)):
        dict_school[unicode(school_set[i])]=school_value
    return dict_school
    
def get_value_list(datalist,dict_211,dict_211_value,dict_985,dict_985_value):
    stulist=[]
    for i in range(0,len(datalist)):
        tmp=0
        if(dict_211.get(unicode(datalist[i]))==1):
            if(dict_985.get(unicode(datalist[i]))==2):
                tmp=dict_985_value
            else:
                tmp=dict_211_value 
        else:
            tmp=0
        stulist.append(tmp)
        
    stulist.reverse()
    return stulist
    
studata=pd.read_excel(r'e:/test/src.xls')
judgedata=pd.read_excel(r'e:/test/judge.xlsx')
jd_211=judgedata[u'院校名称'].tolist()
jd_985=get_985(jd_211,judgedata[985])

dict_985=get_school_dict(jd_985,2)
dict_211=get_school_dict(jd_211,1)

datalist=studata[u'报考院校'].tolist()
stulist=get_value_list(datalist,dict_211,1,dict_985,2)

cnt_211=0
cnt_985=0
cnt=0
for i in range(len(stulist)):
    if(stulist[i]==2):
        cnt_985+=1
    elif(stulist[i]==1):
        cnt_211+=1
    elif(stulist[i]==0):
        cnt+=1
        
axis([0, 1600, -1, 3])
plt.title("985 school:%d,211 school:%d,others:%d" %(cnt_985,cnt_211,cnt))
plt.plot(range(0,len(stulist)),stulist,color='g',marker='o')
plt.savefig(r'e:/test/school.png')
plt.show()

数据来源是某院校的考研报名统计,985,211院校的名单表格从网上下载一份即可,统计了考生报名双非,211,985的人数分布,绘制成图如下:(0表示双非,1表示211,2表示985)

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值