python数据处理详情

目录
  • 一,前言
  • 二,python模块
    • 2.1,增加停用词表
    • 2.2,顺序读取
    • 2.3,lambda函数
  • 三,运行
    • 3.1,存入文件

一,前言

我们现在拿到了一个十分庞大的数据集。是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()]

基本如图所示:

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为里面的每一句。

代码如图所示:

使用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))

三,运行

3.1,存入文件

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

到此这篇关于python数据处理详情的文章就介绍到这了,更多相关python数据处理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 进行数据处理的6个 Python 代码块分享

    目录 1.选取有空值的行 2.快速替换列值 3.对列进行分区 4.将一列分为多列 5.中文筛选 6.更改列的位置 前言: 大家好,今天和大家分享自己总结的6个常用的 Python 数据处理代码,对于经常处理数据的coder最好熟练掌握. 1.选取有空值的行 在观察数据结构时,该方法可以快速定位存在缺失值的行. df = pd.DataFrame({'A': [0, 1, 2],                    'B': [0, 1, None],                    'C

  • Python数据处理-导入导出excel数据

    目录 一.xlwt库将数据导入Excel 1.将数据写入一个Excel文件 2.定制Excel表格样式 3.元格对齐 4.单元格的背景色 5.单元格边框 二.xlrd库读取Excel中的数据 1.读取Excel文件 2.工作表的相关操作 3.处理时间数据 前言: Python的一大应用就是数据分析了,而数据分析中,经常碰到需要处理Excel数据的情况.这里做一个Python处理Excel数据的总结,基本受用大部分情况.相信以后用Python处理Excel数据不再是难事儿! 一.xlwt库将数据导

  • 如何利用python处理原始音频数据

    目录 一.基础知识 二.转换函数 三.片段特征函数 四.片段操作 一.基础知识 PCM(pulse code modulation) ,即脉冲编码调制,是将模拟信号转为数字信号的一种编码系统.而模数转换主要分两步,首先对连续的模拟信号进行采样,然后把采样得到的数据转化为数值,即量化. 设x xx为输入信号,F ( x ) F(x)F(x)为量化后的信号,则F ( x ) F(x)F(x)既可以是线性的,也可以是非线性的.在audioop中,主要提供三种编码支持,分别是a-Law,μ-Law以及A

  • Python数据分析处理(三)--运动员信息的分组与聚合

    目录 3.1 数据的爬取 3.2统计男篮.女篮运动员的平均年龄.身高.体重 3.3统计男篮运动员年龄.身高.体重的极差值 3.4 统计男篮运动员的体质指数 3.4.1添加体重指数 3.4.2计算bmi值并添加数据 3.1 数据的爬取 代码: import pandas as pd f = open('运动员信息表.csv') data=pd.read_csv(f,skiprows=0,header=0) print(data) 运行结果: 首先使用pd.read_csv(f,skiprows=0

  • Python Pandas读取Excel日期数据的异常处理方法

    目录 异常描述 出现原因 解决方案:修改自定义格式 pandas直接解析Excel数值为日期 总结 异常描述 有时我们的Excel有一个调整过自定义格式的日期字段: 当我们用pandas读取时却是这样的效果: 不管如何指定参数都无效. 出现原因 没有使用系统内置的日期单元格格式,自定义格式没有对负数格式进行定义,pandas读取时无法识别出是日期格式,而是读取出单元格实际存储的数值. 解决方案:修改自定义格式 可以修改为系统内置的自定义格式: 或者在自定义格式上补充负数的定义: 增加;@即可 p

  • 使用python的turtle库画一个冰墩墩效果

    目录 设置一个画布 画左手和手内 画轮廓和其他部分 画细节(眼睛.鼻子.嘴巴等) 画头部彩虹 画五环标志 使用python画一个冰墩墩先看效果图 设置一个画布 import turtle turtle.setup(800,600) turtle.speed(10) 画左手和手内 turtle.penup() turtle.goto(177,112) turtle.pencolor('lightgray') turtle.pensize(3) turtle.fillcolor('white') t

  • Python数据分析与处理(二)——处理中国地区信息

    目录 2.1数据的爬取 2.2检查重复数据 2.3检查缺失值 2.4 检查异常值 2.1数据的爬取 代码: import pandas as pd data=pd.read_csv("example_data.csv",header=1) print(data) data1=pd.read_csv("北京地区信息.csv",header=1,encoding='gbk') data2=pd.read_csv("天津地区信息.csv",encodi

  • python数据处理详情

    目录 一,前言 二,python模块 2.1,增加停用词表 2.2,顺序读取 2.3,lambda函数 三,运行 3.1,存入文件 一,前言 我们现在拿到了一个十分庞大的数据集.是json文件,里面存储了将近十万个数据,现在要对其中的数据进行清洗处理. 二,python模块 import json import jieba 我们需要用json模块来处理json文件,和使用jieba库来分析词性,这样可以实现我们的需求. 2.1,增加停用词表 停用词表.txt,把停用词表存入stopwords,原

  • python数据处理实战(必看篇)

    一.运行环境 1.python版本 2.7.13 博客代码均是这个版本 2.系统环境:win7 64位系统 二.需求 对杂乱文本数据进行处理 部分数据截图如下,第一个字段是原字段,后面3个是清洗出的字段,从数据库中聚合字段观察,乍一看数据比较规律,类似(币种 金额 万元)这样,我想着用sql写条件判断,统一转换为'万元人民币' 单位,用sql脚本进行字符串截取即可完成,但是后面发现数据并不规则,条件判断太多清洗质量也不一定,有的前面不是左括号,有的字段里面没有币种,有的数字并不是整数,有的没有万

  • Python数据处理numpy.median的实例讲解

    numpy模块下的median作用为: 计算沿指定轴的中位数 返回数组元素的中位数 其函数接口为: median(a, axis=None, out=None, overwrite_input=False, keepdims=False) 其中各参数为: a:输入的数组: axis:计算哪个轴上的中位数,比如输入是二维数组,那么axis=0对应行,axis=1对应列: out:用于放置求取中位数后的数组. 它必须具有与预期输出相同的形状和缓冲区长度: overwrite_input:一个bool

  • Python 数据处理库 pandas 入门教程基本操作

    pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库.本文是对它的一个入门教程. pandas提供了快速,灵活和富有表现力的数据结构,目的是使"关系"或"标记"数据的工作既简单又直观.它旨在成为在Python中进行实际数据分析的高级构建块. 入门介绍 pandas适合于许多不同类型的数据,包括: 具有异构类型列的表格数据,例如SQL表格或Excel数据 有序和无序(不一定是固定频率)时间序列数据.

  • 浅析Python数据处理

    Numpy.Pandas是Python数据处理中经常用到的两个框架,都是采用C语言编写,所以运算速度快.Matplotlib是Python的的画图工具,可以把之前处理后的数据通过图像绘制出来.之前只是看过语法,没有系统学习总结过,本博文总结了这三个框架的API. 以下是这三个框架的的简单介绍和区别: Numpy:经常用于数据生成和一些运算 Pandas:基于Numpy构建的,是Numpy的升级版本 Matplotlib:Python中强大的绘图工具 Numpy Numpy快速入门教程可参考:Nu

  • Python 数据处理库 pandas进阶教程

    前言 本文紧接着前一篇的入门教程,会介绍一些关于pandas的进阶知识.建议读者在阅读本文之前先看完pandas入门教程. 同样的,本文的测试数据和源码可以在这里获取: Github:pandas_tutorial. 数据访问 在入门教程中,我们已经使用过访问数据的方法.这里我们再集中看一下. 注:这里的数据访问方法既适用于Series,也适用于DataFrame. 基础方法:[]和. 这是两种最直观的方法,任何有面向对象编程经验的人应该都很容易理解.下面是一个代码示例: # select_da

  • python数据处理 根据颜色对图片进行分类的方法

    前面一篇文章有说过,利用scrapy来爬取图片,是为了对图片数据进行分类而收集数据. 本篇文章就是利用上次爬取的图片数据,根据图片的颜色特征来做一个简单的分类处理. 实现步骤如下: 1:图片路径添加 2:对比度处理 3:滤波处理 4:数据提取以及特征向量化 5:图片分类处理 6:根据处理结果将图片分类保存 代码量中等,还可以更少,只是我为了练习类的使用,而将每个步骤都封装成了一个独立的类,当然里面也有类继承的问题,遇到的问题前面一篇文章有讲解.内容可能有点繁琐,尤其是文件和路径的使用(可以自己修

  • 对python 数据处理中的LabelEncoder 和 OneHotEncoder详解

    如下所示: #简单来说 LabelEncoder 是对不连续的数字或者文本进行编号 from sklearn.preprocessing import LabelEncoder le = LabelEncoder() le.fit([1,5,67,100]) le.transform([1,1,100,67,5]) 输出: array([0,0,3,2,1]) #OneHotEncoder 用于将表示分类的数据扩维: from sklearn.preprocessing import OneHo

  • Python数据处理篇之Sympy系列(五)---解方程

    前言 sympy不仅在符号运算方面强大,在解方程方面也是很强大. 本章节学习对应官网的:Solvers 官方教程 https://docs.sympy.org/latest/tutorial/solvers.html (一)求解多元一次方程-solve() 1.说明: 解多元一次方程可以使用solve(),在sympy里,等式是用Eq()来表示, 例如:2x=42x=4 表示为:Eq(x*2, 4) 2.源代码: """ 解下列二元一次方程 2x-y=3 3x+y=7 &qu

  • python数据处理——对pandas进行数据变频或插值实例

    这里首先要介绍官方文档,对python有了进一步深度的学习的大家们应该会发现,网上不管csdn或者简书上还是什么地方,教程来源基本就是官方文档,所以英语只要还过的去,推荐看官方文档,就算不够好,也可以只看它里面的sample就够了 好了,不说废话,看我的代码: import pandas as pd import numpy as np rng = pd.date_range('20180101', periods=40) ts = pd.Series(np.arange(1,41), inde

随机推荐