栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

数据预处理与清洗(一)入门

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据预处理与清洗(一)入门

目录

 工具准备

遇到问题 

去除空格操作

查找并删除重复值 

 缺失值处理 

 

 工具准备

参考链接:Anaconda详细安装及使用教程(带图文)_代码帮-CSDN博客 

 我是直接打开的jupyter lab

 

遇到问题 

问题一:开始为了方便查看每个款式的评论我是每个手机评论分开存在csv然后手动放在一起,然后导致文件保存为GBK格式,所以jupyter无法打开

 

解决方法:用python将GBK文件转为utf-8文件,代码如下:

import csv

# 打开要修改格式的csv文件 data1,并读出内容到reader
with open('JDcontents_vivo.csv', 'r',encoding = 'GBK') as f:
    reader = csv.reader(f)
    for line in reader:
    # 将data1的内容以utf8格式写入新的csv文件data2
        with open('京东评论/各大品牌分开/data2.csv', 'a', encoding ='utf-8-sig', newline='') as d:
            writer = csv.writer(d)
            writer.writerow(line)

问题二,csv文件格式存储有错误,导致jupyter运行结果不太对,后期数据预处理不正常 

只有评分表单

 

原因:读取格式不对,因为当前是没有索引的,要直接读取,而不是将评论作为索引列

 

参考链接:Python 用pandas读写CSV文件的index和columns细节问题_u011412768的博客-CSDN博客目录1、生成一个dataframe2、写到csv文件3、读取csv文件4、总结1、生成一个dataframe(1)自己不设置index,程序自动生成indexdata = {'animal': ['cat', 'cat', 'snake', 'dog', 'dog', 'cat', 'snake', 'cat', 'dog', 'dog'], 'age': [2.5, 3, 0.5, np.nan, 5, 2, 4.5, np.nan, 7, 3], .https://blog.csdn.net/u011412768/article/details/109522349

修改后结果为:

去除空格操作

代码:

 [x.strip() for x in col] #strp只能去除前后空格

去除空格前

 

去除空格后

查找并删除重复值 

查找重复值

代码:

df[df.duplicated()]#找出有重复值的位置

运行结果:

 删除重复值

代码:

df.drop_duplicates(inplace=True)

 运行结果:

 中间索引出现不连续的说明有的被删除

索引重置

代码:

df.index = range(df.shape[0])

结果:

 

 缺失值处理 

df.isnull #查看缺失值
df.notnull #查看不是缺失值的数据
df.dropna() #删除缺失值
df.fillna() #填补缺失值 

查看缺失值

 删除缺失值

df.dropna(inplace=True)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/313697.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号