Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

ZxqSoftWare 2018-12-25

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

作者 | 阿广

责编 | 郭芮

我们渐渐长大,从一开始的初生牛犊不怕虎到渐渐惧怕孤独,从一开始的单打独斗到渐渐合群躲避孤独。不巧的是,考研就是一个孤单修炼的事情,没有任何人能够去帮你,于是二十出头的我们,从“牛*吊炸天,我要改变全世界”逐渐蜕变成“我要适应这个世界,我要适应孤单”。过去总是赶赴一场又一场热闹,在觥筹交错间,推杯换盏时,说一些违心的话,做一些违心的事,慢慢失去自我。但愿,酒阑人散后,剩下的只有空虚落寞;但愿,灯火阑珊处,留下是考研最美好的回忆。

数据介绍

本文统计的对象为1980年以来英语试卷所包含的词汇,并对其进行了分析和总结。

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

实现过程

1、加载基础词汇

bw = open('data/basic_words.txt')
basicwords = []
for eachLine in bw:
 basicwords.append(sw.simplify_word(re.split("[^A-Za-z]", eachLine)[0].lower()))
 #print re.split("[^A-Za-z]", eachLine)[0]
print(len(list(set(basicwords))))
basicwords = list(set(basicwords))

2、加载超纲词汇

notindagang = np.zeros(33)
chaogangword = {}
for j in range(33):
 for k in wy.eywords[j]:
 if k not in dw.dagangwords and k not in bw.basicwords:
 #notindagang[j] += 1
 if chaogangword.has_key(k):
 chaogangword[k] += 1
 else:
 chaogangword[k] = 1
for j in range(33):
 for k in wy.eywords[j]:
 if k not in dw.dagangwords and k not in bw.basicwords:
 if chaogangword[k] <= 2:
 notindagang[j] += 1
chaogangword = sorted(chaogangword.iteritems(), key = lambda e:e[1], reverse = True)
print('Chaogangword =',chaogangword)
pnotindagang = [float(x) / len(wy.eywords[i]) for i,x in enumerate(notindagang)]

3、词汇分析

def simplify_word(a):
 #如果已经可以判断是名词,动词,形容词,副词,连词
 if enumerate.is_noun(a) or enumerate.is_verb(a) or enumerate.is_adjective(a) or enumerate.is_adverb(a) or enumerate.is_connective(a):
 return a
 try:#测试是否为动词,如果是则返回
 enumerate.is_verb(enumerate.verb.present(a))
 return enumerate.verb.present(a)
 except:#否则继续检查
 pass
 
 #测试是否是名词
 if enumerate.is_noun(enumerate.noun.singular(a)):
 return enumerate.noun.singular(a)
 otherwordlist.append(a)
 #print a
 return a

4、加载大纲词汇

dagang = open('data/5495大纲词汇.txt')
dagangwords = []
for eachLine in dagang:
 dagangwords.append(sw.simplify_word(re.split("[^A-Za-z]", eachLine)[0].lower()))
 #print re.split("[^A-Za-z]", eachLine)[0]
print(len(list(set(dagangwords))))
dagangwords = list(set(dagangwords))

5、考研英语真题单词数据可视化

x33 = 1980*np.ones(33)+range(33)
x32 = 1981*np.ones(32)+range(32)
plt.figure('wordeachyear')
plt.plot(x33,wy.eywords_volume,'r--o',alpha = 0.5)
plt.grid(True)
plt.show()
plt.figure('notindagang')
plt.plot(x33,cgw.notindagang,'o-', alpha = 0.5)
plt.grid(True)
plt.show()
plt.figure('wn')
plt.plot(wy.eywords_volume,cgw.pnotindagang,'bo')
plt.show()
plt.figure('pchaogang')
plt.plot(x33,cgw.pnotindagang,'o-', alpha = 0.5)
plt.grid(True)
plt.show()
plt.figure('notinpast')
plt.bar(x33,nip.words_not_in_the_past, color = 'green', alpha = 0.5)
plt.grid(True)
plt.show()
plt.figure('wordsAppearLastTime')
plt.plot(x32, walt.es, 'b--o', alpha = 0.5)
plt.grid(True)
plt.show()
plt.figure('pwordsAppearLastTime')
#plt.axes([1980, 2013 , 0.35 ,0.6])
plt.plot(x32, walt.esr1, 'r-o')
plt.plot(x32, walt.esr2, 'b--o', alpha = 0.4)
plt.plot(x32, walt.esr3, 'y--o', alpha = 0.4)
plt.grid(True)
plt.show()

考研英语真题词汇统计结果

1、第i+1年出现的从1980~i年间从未出现过的单词:

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

2、第一年真题中出现的单词数:

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

3、每一年都出现的单词:

and,have,other,most,last, all,year,way,hi,like, because,your,new,know, english, chinese,if,you,they,this, give,people,he, not,many, question, from,into,such,work, over,would,make,translation,up, in,no,then,an, will, some,section,we,with, these, it,there,which,by,so, one,when,do, those,can, four,be,that,must,of, say,should,than,a,become, at,write, who,on, the, only,to,but,about,or, for

4、相邻年份考研真题词汇重复数:

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

5、相邻年份考研真题词汇重复率:

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

6、计算35年来真题词汇超纲率:

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

7、拟合:

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

Python 分析 35 年的考研英语真题词汇,解读孤独的考研大军!

写在最后

时光如白驹过隙,世事如白云苍狗。转眼间,我们也迎来了继高考以来第二次决定命运的战斗——考研。

“考研是孤独的,孤独两个字拆开,有孩童,有瓜果,有小犬,有蚊蝇,足以撑起一个那年盛夏傍晚的巷子口,人情味十足。稚儿擎瓜柳蓬下,细犬逐蝶深巷中。人间繁华多笑语,唯我空余两鬓清风。孩童、水果、猫、狗、飞蝇当然热闹,可都与你无关,这就叫孤独,这就叫考研。”

我问了我考研同学的成绩了,只说了一句:“来,再开一局”……

用四个字形容考完研后的自己:“重在参与”。

我已经用了四年的时间证明了自己不是读书的这块料,但学校没有放弃我,给了我最后三天,让我证明了我自己,确实不是读书这块料。

考研就像参加超级女生,能坚持到最后的都是纯爷们!

考研英语,单词几乎是研考生心里永远的痛,今年又考倒了一大片,何必总是拿外国话来为难自己的同胞呢?

考研的都是勇士,考上去的是上士,考下去的是下士,还站着的是战士,考躺下的是烈士!

注:以上均为段子,希望每一位考研人本周六周日过过过!

作者:阿广,本文首发于个人公众号「视学算法」。「视学算法」是专注于大数据、人工智能和算法的学习平台,也是一个保送中科院软件研究所直博生的自留地。人生苦短,我愿做您最忠实的技术支持伙伴!一起用代码改变世界!

声明:本文为作者投稿,版权归作者所有。


相关推荐

友心人 / 0评论 2017-12-24