继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Python词频对比并导入CSV文件

慕的地2295285
关注TA
已关注
手记 19
粉丝 0
获赞 5

需要用到的停用词库我上传到我的资源了,大家也可以自己去网上找!

本来是想把两个词频统计放入一个CSV文件中,但是无奈向已经存在的CSV文件中追加写入数据只能在已经存在的数据下面追加,也就是在同一列追加,不能另起一列添加数据,哪位兄弟怼出来了,欢迎回复或私信!


import jieba

import pandas as pd

import csv

import codecs

# num=jieba.lcut("中国是一个伟大的国家") # jieba库的测试

# print(num)

# 计算机专业的-1.txt

txt1=open("计算机专业.txt").read()

# 导入停用词库,过滤掉那些没用的词语,甚至都不是词语,比如标点符号,停用词在我的资源中有保存

stopwords=[line.strip() for line in open("停用词.txt").readlines()]

words1=jieba.lcut(txt1)

# print(words1)

counts1={}

for word1 in words1:

    if len(word1)==1:

        continue

    else:

        counts1[word1]=counts1.get(word1,0)+1

items1=list(counts1.items())

items1.sort(key=lambda x:x[1],reverse=True) # 根据词频进行降序排序

# print(items1)

file_csv=open("计算机专业词频.csv",'w+',newline='') #添加newline='',可以删除每行之间的空行

writer=csv.writer(file_csv)

writer.writerow(["词汇","词频"])

for data in items1:

    writer.writerow(data)

file_csv.close()

# 法学专业的-2.txt

txt2=open("法学专业.txt").read()

words2=jieba.lcut(txt2)

counts2={}

for word2 in words2:

    if len(word2)==1:

        continue

    else:

        counts2[word2]=counts2.get(word2,0)+1

items2=list(counts2.items())

items2.sort(key=lambda x:x[1],reverse=True)

#print(items2)

# dataframe=pd.DataFrame({'items1_name':items1,'items2_name':items2})

# dataframe.to_csv("test.csv")

# file_csv=open('test.csv','a')

file_csv=open("法学专业词频.csv",'w+',newline='')

writer=csv.writer(file_csv)

writer.writerow(["词汇","词频"])

for data in items2:

    writer.writerow(data)

file_csv.close()




打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP