码迷,mamicode.com
首页 > 其他好文 > 详细

数据清洗记录2

时间:2016-11-28 00:43:26      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:字段   没有   and   lazy   read   apply   parse   rom   auto   

爬虫爬下来的数据,有个字段含有大量脏数据,如图1所示,现在需要提取出“红色框”中的“作者机构名称”。

一开始用的excel,替换、分类、按照模式的快速填充各种都用上了,但是,数据量太大了(有上万条,辛苦机器性能还行)而且你懂得,人工操作肯定有误操作而且分列啥的这些功能适应新不怎么强,结果,弄了小半天终于完整地清洗完毕。

下文提供两种方法:1、excel中清洗;2、pandas+正则表达式

 

技术分享

 

图1

技术分享
图2

方法1:

    略过

方法2:

pandas 凭借其强大的能力,分分钟处理完毕,而且没有任何小问题。

#代码如下:

__author__ = Oscar_Yang

# -*- coding= utf-8 -*-

import re

import pandas as pd

path=r"C:\Users\Oscar\Desktop\1.xlsx"

path1=r"C:\Users\Oscar\Desktop\2.xlsx"

xls_file=pd.ExcelFile(path)

table=xls_file.parse("Sheet1")

#或者table=pd.read_excel(path)

s1=table.jigou.fillna("Missing")

# print(s1)

# print(table)

def get_clean_table(a):

    p = re.compile("\[.*?,")

    c = [x.split(",")[0] for x in p.findall(a)]

    return c

a=s1.apply(get_clean_table)

new_frame=pd.DataFrame(a)

# print(a)

writer = pd.ExcelWriter(path1)

new_frame.to_excel(writer,Sheet1)

writer.save()

 

技术分享

图3 处理结果

 

数据清洗记录2

标签:字段   没有   and   lazy   read   apply   parse   rom   auto   

原文地址:http://www.cnblogs.com/coskaka/p/6107646.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!