统计中国,美国,世界排名前50的关键词并进行比较

1 获取中国所有关键词

import pymysql
import json

conn= pymysql.connect(
        host=‘localhost‘,
        port = 3306,
        user=‘root‘,
        passwd=‘‘,
        db =‘python‘,
        )
cursor = conn.cursor()

sql = "SELECT union_kwd_str,pmc_id FROM alzheimer where authorinfor like ‘%china%‘ && union_kwd_str != ‘‘"
a = cursor.execute(sql)
print a
b = cursor.fetchmany(a)  #b has 7887 abstract list

abstract_list = []
pmc_id_dict= {}

for j in range(a):
    abstract_list.append(b[j][0])
    pmc_id_dict[j] = b[j][1]

def output_to_json(data,filename):
    with open(filename,‘w‘) as file:
        file.write(json.dumps(data))
        file.close()
    return json.dumps(data)

output_data = {
        ‘country‘: "china",
        ‘count‘: a,
        ‘keyword‘: abstract_list
    }
output_to_json(output_data, ‘1203_china_kwd.json‘)

选出排名前50的关键词

import re
import collections
import json

def input_from_json(filename):
    with open(filename,‘r‘) as file:
        data = json.loads(file.read())
        file.close()
        return data

def count_word(path):
    result = {}
    keyword_list = input_from_json(path)[‘keyword‘]
    for all_the_text in keyword_list:
        for word in all_the_text.split(‘,‘):
            if word not in result:
                result[word] = 0
            result[word] += 1
    return result

def sort_by_count(d):  

    d = collections.OrderedDict(sorted(d.items(), key = lambda t: -t[1]))
    return d  

if __name__ == ‘__main__‘:
    file_name = "1203_china_kwd.json"
    fobj1 = open(‘1204_top50_china_kwd_list.json‘,‘w‘)
    fobj2 = open(‘1203_top15_china_kwd.json‘,‘w‘)

    dword = count_word(file_name)
    dword = sort_by_count(dword)  

    jsonlist = []
    num = 0

    top_china_kwd_list = []
    for key,value in dword.items():
        num += 1
        key = re.sub("_", " ", key)
        data = {
        ‘name‘: key,
        ‘value‘: value
        }
        json_data = json.dumps(data)

        if num < 50:
            top_china_kwd_list.append(key)
            fobj2.write(json_data)
            fobj2.write(‘,‘)
        if num == 50:
            top_china_kwd_list.append(key)
            fobj2.write(json_data)

    data = {
    ‘china_kwd‘:top_china_kwd_list
    }
    json_data = json.dumps(data)
    fobj1.write(json_data)

2.获取美国的所有关键词,并做统计,与中国的统计代码相似,下一步工作是整合代码。

import pymysql
import json

conn= pymysql.connect(
        host=‘localhost‘,
        port = 3306,
        user=‘root‘,
        passwd=‘‘,
        db =‘python‘,
        )
cursor = conn.cursor()

sql = "SELECT union_kwd_str,pmc_id FROM alzheimer where authorinfor like ‘%USA%‘ && union_kwd_str != ‘‘"
a = cursor.execute(sql)
print a
b = cursor.fetchmany(a)  #b has 7887 abstract list

abstract_list = []
pmc_id_dict= {}

for j in range(a):
    abstract_list.append(b[j][0])
    pmc_id_dict[j] = b[j][1]

def output_to_json(data,filename):
    with open(filename,‘w‘) as file:
        file.write(json.dumps(data))
        file.close()
    return json.dumps(data)

output_data = {
        ‘country‘: "USA",
        ‘count‘: a,
        ‘keyword‘: abstract_list
    }
output_to_json(output_data, ‘1204_USA_kwd.json‘)

美国前50的关键词

import re
import collections
import json

def input_from_json(filename):
    with open(filename,‘r‘) as file:
        data = json.loads(file.read())
        file.close()
        return data

def count_word(path):
    result = {}
    keyword_list = input_from_json(path)[‘keyword‘]
    for all_the_text in keyword_list:
        for word in all_the_text.split(‘,‘):
            if word not in result:
                result[word] = 0
            result[word] += 1
    return result

def sort_by_count(d):  

    d = collections.OrderedDict(sorted(d.items(), key = lambda t: -t[1]))
    return d  

if __name__ == ‘__main__‘:
    file_name = "1204_USA_kwd.json"
    fobj1 = open(‘1204_top50_USA_kwd_list.json‘,‘w‘)
    fobj2 = open(‘1204_top50_USA_kwd.json‘,‘w‘)

    dword = count_word(file_name)
    dword = sort_by_count(dword)  

    jsonlist = []
    num = 0

    top_USA_kwd_list = []
    for key,value in dword.items():
        num += 1
        key = re.sub("_", " ", key)
        data = {
        ‘name‘: key,
        ‘value‘: value
        }
        json_data = json.dumps(data)

        if num < 50:
            top_USA_kwd_list.append(key)
            fobj2.write(json_data)
            fobj2.write(‘,‘)
        if num == 50:
            top_USA_kwd_list.append(key)
            fobj2.write(json_data)

    data = {
    ‘USA_kwd‘:top_USA_kwd_list
    }
    json_data = json.dumps(data)
    fobj1.write(json_data)

3,世界的前50的关键词

import pymysql
import json

conn= pymysql.connect(
        host=‘localhost‘,
        port = 3306,
        user=‘root‘,
        passwd=‘‘,
        db =‘python‘,
        )
cursor = conn.cursor()

sql = "SELECT union_kwd_str,pmc_id FROM alzheimer where  union_kwd_str != ‘‘"
a = cursor.execute(sql)
print a
b = cursor.fetchmany(a)  #b has 7887 abstract list

abstract_list = []
pmc_id_dict= {}

for j in range(a):
    abstract_list.append(b[j][0])
    pmc_id_dict[j] = b[j][1]

def output_to_json(data,filename):
    with open(filename,‘w‘) as file:
        file.write(json.dumps(data))
        file.close()
    return json.dumps(data)

output_data = {
        ‘country‘: "world",
        ‘count‘: a,
        ‘keyword‘: abstract_list
    }
output_to_json(output_data, ‘1203_world_kwd.json‘)

世界前50关键词

import re
import collections
import json

def input_from_json(filename):
    with open(filename,‘r‘) as file:
        data = json.loads(file.read())
        file.close()
        return data

def count_word(path):
    result = {}
    keyword_list = input_from_json(path)[‘keyword‘]
    for all_the_text in keyword_list:
        for word in all_the_text.split(‘,‘):
            if word not in result:
                result[word] = 0
            result[word] += 1
    return result

def sort_by_count(d):  

    d = collections.OrderedDict(sorted(d.items(), key = lambda t: -t[1]))
    return d  

if __name__ == ‘__main__‘:
    file_name = "1203_world_kwd.json"
    fobj1 = open(‘1204_top50_world_kwd_list.json‘,‘w‘)
    fobj2 = open(‘1203_top15_world_kwd.json‘,‘w‘)

    dword = count_word(file_name)
    dword = sort_by_count(dword)  

    jsonlist = []
    num = 0

    top_world_kwd_list = []
    for key,value in dword.items():
        num += 1
        key = re.sub("_", " ", key)
        data = {
        ‘name‘: key,
        ‘value‘: value
        }
        json_data = json.dumps(data)

        if num < 50:
            top_world_kwd_list.append(key)
            fobj2.write(json_data)
            fobj2.write(‘,‘)
        if num == 50:
            top_world_kwd_list.append(key)
            fobj2.write(json_data)

    data = {
    ‘world_kwd‘:top_world_kwd_list
    }
    json_data = json.dumps(data)
    fobj1.write(json_data)

4.比较中国与美国的关键词有哪些相似的,以及中国与世界的研究热点有哪些相似的

import json

def input_from_json(filename):
    with open(filename,‘r‘) as file:
        data = json.loads(file.read())
        file.close()
        return data

china_path = ‘1204_top50_china_kwd_list.json‘
world_path =  ‘1204_top50_world_kwd_list.json‘
USA_path =  ‘1204_top50_USA_kwd_list.json‘
china_kwd_list = input_from_json(china_path)[‘china_kwd‘]
world_kwd_list = input_from_json(world_path)[‘world_kwd‘]
USA_kwd_list = input_from_json(USA_path)[‘USA_kwd‘]

a = set(china_kwd_list)
b = set(world_kwd_list)
c = set(USA_kwd_list)

china_world_same_kwd =list(a&b)
for kwd in china_world_same_kwd:
    kwd = kwd.encode(‘utf-8‘)
    print kwd

print len(china_world_same_kwd)

print ‘\n‘

china_USA_same_kwd =list(a&c)
for kwd in china_USA_same_kwd:
    kwd = kwd.encode(‘utf-8‘)
    print kwd

print len(china_world_same_kwd)
时间: 2024-08-24 02:41:26

统计中国,美国,世界排名前50的关键词并进行比较的相关文章

全球排名前50网站都用什么语言开发的?

网站建站除了要考虑网站的域名外,第二步就是要考虑网站动态开发语言.根据Alexa最新排名,统计了前50个网站的前端开发语言.服务器及数据库环境,发布出来供网站建设的决策者们参考.http://www.alexa.com/topsites 把全球排行前50网站动态开发语言最后的统计结果发出来: 序号 网站 程序 OS DB 1 FACEBOOK PHP Linux+Apache MySql 2 GOOGLE Python 集群(自主研发) 集群 3 YouTube Python 集群 集群 4 Y

加粉统计,来粉统计,微信号复制统计,微信号在线管理!关键词复制统计!网页监控!免费注册使用!

加粉统计,微信号复制统计,关键词复制统计工具,微信号在线管理等工具. 可以去官网查看详细的介绍:这里叫大家如何快速使用:官网链接: www.zaax.top目前免费注册,免费使用一个月,而且功能无限制,只是免费版的开放的数量比较少.付费版价格也是明码标价,可以根据自己推广的链接需求选择对应的版本. 目前有4大功能: 一. 微信号加粉统计,复制统计功能 统计网页上的微信号或者关键词的是否复制过, 统计用户复制微信好后是否打开微信, 统计用户搜索词统计复制的情况, 统计访问的地区统计复制的情况, 统

找出前50最耗CPU的SQL语法

-- 找出前50最耗CPU的SQL语法 SELECT TOP 50 qs.total_worker_time/qs.execution_count as [Avg CPU Time], SUBSTRING(qt.text,qs.statement_start_offset/2, (case when qs.statement_end_offset = -1 then len(convert(nvarchar(max), qt.text)) * 2 else qs.statement_end_of

软考-网络工程师考试成绩进全国前50名经验分享

从业十年了,之前只参加过各种IT厂商的培训和认证考试,根据经验一般来说只需要象征性的参加个培训,再看看书,之后背下题库就能考过了.但是去年换工作从私企到了一家事业单位,新单位对厂商的认证不再要求了,之前考过的厂商证书在这基本都作废了,但新单位需要有国家承认的技术职称考试证书,我选择参加的是"计算机技术与软件专业技术资格(水平)考试"---"网络工程师"的考试并一次顺利的通过了考试,刚刚查询我的总成绩还进入了全国前50名,下面分享一些我备考的经验的给大家.希望对各位准

世界排名前70的最优美的英语单词

2011年10月19日11:27腾讯博客[微博]我要评论(0) 字号:T|T 根据对4万名海外投票者和英国文化协会在世界各地英语(论坛)中心的学习者的调查显示,“母亲”(Mother)是英语当中最优美的单词.此项调查为庆祝英国文化协会成立70周年而举办. 英国文化协会在华作为英国大使馆文化教育处(微博)开展工作.为开展上述调查工作,英国文化协会征求了46个国家7000多名英语学习者对英语中最优美单词的意见.此外,英国文化协会还通过自己的网站在网上征求了非英语国家的意见.非英语国家中35000多人

全球100款大数据工具汇总(前50款)

01  Talend Open Studio 是第一家针对的数据集成工具市场的ETL(数据的提取Extract.传输Transform.载入Load)开源软件供应商.Talend的下载量已超过200万人次,其开源软件提供了数据整合功能.其用户包括美国国际集团(AIG).康卡斯特.电子港湾.通用电气.三星.Ticketmaster和韦里逊等企业组织. 02 DYSON 探码科技自主研发的DYSON智能分析系统,可以完整的实现大数据的采集.分析.处理.DYSON智能分析系统专业针对互联网数据抓取.处

统计电影票房排名前10的电影并存入另一个文件

今天看到一个笔试题,是这样的:给定一个文件(m.dat),里面保存了各个电影票房统计,格式如下: <2012>                                索尼                $769.7 <哈利波特与死亡圣器(上)>              华纳兄弟            $952.0 <星球大战>                            二十世纪福克斯      $775.4 <怪物史莱克4>      

TIOBE 9月编程语言排行榜:Julia首次进入前50

TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员. 课程和第三方厂商的数量.排名使用著名的搜索引擎(诸如 Google.MSN.Yahoo!.Wikipedia.YouTube 以及 Baidu 等)进行计算. 该指数可以用来检查你的编程技能是否仍然是最新的或作出什么开始建立一个新的软件系统时,编程语言应采取的战略决策.在 TIOBE 指数的定义可以在这里找到. 编程语言排行榜 TOP 20 榜单: 前 10 名编程语言长期走势图:

OCP知识点讲解 之 队列、资源与锁:RHCA|OCM|CCIE RedHat大中华地区前50位RHCA系统架构师:叶绍琛

一.队列与共享资源 共享资源可以被多个会话.进程同时访问,因此它的访问需要保护.Oracle中,除了PGA,所有的东西(包括内存.磁盘.CPU.表.索引.事务等等,种类太多,一概用东西两字来代表)都是共享资源.多个进程或会话对共享资源操作时,就需要排队.这里所需要排的队就是队列(Enqueue).访问不同的共享资源,需要排不同的队.可以这样说,有多少种队列,就有多少种需要保护的共享资源.队列的名字一般是两个字节构成,如TM,TX,JQ,…….具体所有队列的种类.名字,参见V$LOCK视图介绍中的