python处理json数据文件


Posted in Python onApril 11, 2022

一,前言

我们现在拿到了一个十分庞大的数据集。是json文件,里面存储了将近十万个数据,现在要对其中的数据进行清洗处理。

python处理json数据文件

二,python模块

import json
import jieba

我们需要用json模块来处理json文件,和使用jieba库来分析词性,这样可以实现我们的需求。

2.1,增加停用词表

停用词表.txt,把停用词表存入stopwords,原因是:我们的目标分析json里有一些标点符号。

stopwords = [line.strip() for line in open("停用词表.txt",encoding="utf-8").readlines()]

基本如图所示:

python处理json数据文件

a+str(b)+c这是文件名称,a+b+c=./json/poet.song.0.json b递增,实现动态取值

with open(a+str(b)+c,'r',encoding='utf8')as fp:

因为有将近500个json文件。每个文件里有好几千组数据,我现在尽力的优化代码,现在提取一次,把需要的数据存入文件里面差不多需要五分钟。

2.2,顺序读取

  • 定义一个空的字符串,将json对象转换为python对象。定义一个空的list存放诗句。
  • 循环json_data i为里面的每一个元素。
  • 新的追加到list_paragraphs列表
  • 循环 j为里面的每一句。

代码如图所示:

python处理json数据文件

使用jieba库,分析str内容的词性【注意是名称,动词。。。。】排行输出都是俩个字是巧合,没有字数限制

words = jieba.lcut(str_s)

现在words为分析完毕的词性列表,遍历。

排除特殊符号

for word in words:
            if word not in stopwords:
                if len(word) == 1:
                    continue
                else:
                    counts[word] = counts.get(word,0) + 1

出现频率加一。

2.3,lambda函数

使用lambda函数,sort快速排序,遍历输出频率前50的词性。

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

之后赋值word, count。

word, count = items[i]
    print ("{:<10}{:>7}".format(word, count))

三,运行

python处理json数据文件

3.1,存入文件

f=open('towa.txt',"a",encoding='gb18030')
            f.writelines("题目:"+textxxx)
            f.writelines(word_ping)

python处理json数据文件

Python 相关文章推荐
浅谈python新手中常见的疑惑及解答
Jun 14 Python
python3使用pyqt5制作一个超简单浏览器的实例
Oct 19 Python
python ftp 按目录结构上传下载的实现代码
Sep 12 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
Dec 24 Python
Python使用sax模块解析XML文件示例
Apr 04 Python
python中时间、日期、时间戳的转换的实现方法
Jul 06 Python
python实现监控阿里云账户余额功能
Dec 16 Python
python 读写文件包含多种编码格式的解决方式
Dec 20 Python
在pycharm中为项目导入anacodna环境的操作方法
Feb 12 Python
Django-migrate报错问题解决方案
Apr 21 Python
Python实现壁纸下载与轮换
Oct 19 Python
python 带时区的日期格式化操作
Oct 23 Python
Python几种酷炫的进度条的方式
Python通过loop.run_in_executor执行同步代码 同步变为异步
Python Pandas解析读写 CSV 文件
宝塔更新Python及Flask项目的部署
python模板入门教程之flask Jinja
使用Python解决图表与画布的间距问题
Python的property属性详细讲解
Apr 11 #Python
You might like
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
PHP的password_hash()使用实例
2014/03/17 PHP
PHP fastcgi模式上传大文件(大约有300多K)报错
2014/09/28 PHP
PHP中$_SERVER使用说明
2015/07/05 PHP
php将金额数字转化为中文大写
2015/07/09 PHP
在Mac OS上搭建Nginx+PHP+MySQL开发环境的教程
2015/12/21 PHP
PHP实现导出excel数据的类库用法示例
2016/10/15 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
2017/09/16 PHP
javascript 短路法代码精简
2009/08/20 Javascript
用cssText批量修改样式
2009/08/29 Javascript
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
jQuery lazyload 的重复加载错误以及修复方法
2010/11/19 Javascript
DOM 高级编程
2015/05/06 Javascript
JavaScript实现定时隐藏与显示图片的方法
2015/08/06 Javascript
JavaScript ES6的新特性使用新方法定义Class
2016/06/28 Javascript
详解weex默认webpack.config.js改造
2018/01/08 Javascript
node.js博客项目开发手记
2018/03/16 Javascript
在Vue环境下利用worker运行interval计时器的步骤
2019/08/01 Javascript
ionic3双击返回退出应用的方法
2019/09/17 Javascript
Python语言编写电脑时间自动同步小工具
2013/03/08 Python
Python中使用ElementTree解析XML示例
2015/06/02 Python
python:socket传输大文件示例
2017/01/18 Python
python3大文件解压和基本操作
2017/12/15 Python
PyQt5实现简单的计算器
2020/05/30 Python
Python字典dict常用方法函数实例
2020/11/09 Python
canvas绘制树形结构可视图形的实现
2020/04/03 HTML / CSS
波兰在线运动商店:YesSport
2020/07/23 全球购物
杭州信雅达系统.NET工程师面试试题
2015/02/08 面试题
货代行业个人求职简历的自我评价
2013/10/22 职场文书
正风肃纪剖析材料
2014/02/18 职场文书
优秀党务工作者事迹材料
2014/05/07 职场文书
2014年安全员工作总结
2014/11/13 职场文书
见义勇为事迹材料
2014/12/24 职场文书
2015年办公室文员工作总结
2015/04/24 职场文书
2015年暑期社会实践报告
2015/07/13 职场文书
Go语言实现Snowflake雪花算法
2021/06/08 Golang