只想说,数据挖掘工作,80%时间都花在处理数据上了,这句话真不假!

最近和小伙伴组了个队参加数据分析比赛,记录下我处理 csv 文件的一些步骤吧:

修改csv文件

可以用csv模块[1],官方文档[2]

import pandas as pd
import csv
city_class={1:['北京','上海','重庆','天津'],2:['成都','大连','沈阳'],3:['长春']}
with open('city_test.csv','r+') as f:
f.readline()
data=csv.reader(f)
rows=[r for r in data]
print(rows)
for i in rows:
for key,values in city_class.items():
if i[0] in values:
i[0]=key
writer = csv.writer(open('output.csv', 'w'))
print(rows)
writer.writerows(rows)

修改excel

csv文件问题多多,不如直接用exel的xlsx文件也ok:

data = pd.read_excel('test.xlsx')
data['city'].map(dict)

这里使用map[3]对中文数据的城市进行匹配,替换成数字。

将excel文件中转换成dict

a=df.set_index('city')['num'].to_dict()

将excel中的两列转换成字典,用来匹配我上面的城市。[4]

统计excel文件行数和列数

rows=len(data.index)
rows=data['某列名'].count()
data.shape() #获得形状,是一个tuple 行数*列数

EDIT: As noted @Dan Allen in the comments len(df.index) and df[0].count() are not interchangeable as count excludes NaNs,[5]

统计计数

计数统计我们使用:value_counts()

参考


  1. 官方-CSV File Reading and Writing ↩︎

  2. so-python修改csv specific values ↩︎

  3. index-pandas-map ↩︎

  4. so-python pandas dataframe to dictionary ↩︎

  5. so-how to get row count of pandas dataframe? ↩︎

Python 处理 CSV/EXCEL 表格文件的更多相关文章

  1. python读取Excel表格文件

    python读取Excel表格文件,例如获取这个文件的数据 python读取Excel表格文件,需要如下步骤: 1.安装Excel读取数据的库-----xlrd 直接pip install xlrd安 ...

  2. pyhton读取 excel表格文件

    2019的第一天,忘记昨日之事,迎接新的明天. excel表格文件办公中常用,如通过Python操作这些数据需导入并有序读取这些数据 特随笔,供以后查阅 代码如下: import xlrd # fil ...

  3. php中读写excel表格文件示例。

    测试环境:php5.6.24.这块没啥兼容问题. 需要更多栗子,请看PHPExcel的examples.还是蛮强大的. 读取excel文件. 第一步.下载开源的PHPExcel的类库文件,官方网站是h ...

  4. python操作excel表格文件--使用xlrd模块

    原文: http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html 引言: 实际工作中,可能很多情况下都会用到excel表格,像如果不需 ...

  5. Python Module_openpyxl_处理Excel表格

    目录 目录 前言 软件系统 Install openpyxl module Sample code load_workbook加载Excel文件 wbObjectget_sheet_names 获取E ...

  6. 用python批量处理Excel表格,处理结果又快又好,做办公室最靓的那个仔

    使用python批量处理Excel数据     让你根据Excel上所有人的身份证号码,提取出公司员工的生日 让你每个月都将公司所有人的考勤数据整理一下 类似这样的格式化的重复操作,你还在每次都使用的 ...

  7. PHP生成excel表格文件并下载

    本文引自网络,仅供自己学习之用. 利用php导出excel我们大多会直接生成.xls文件,这种方便快捷. function createtable($list,$filename){ header(& ...

  8. python数据写入Excel表格

    from openpyxl import Workbook def main(): sheet_name = "表名1" row_count = 6 # 行数 info_resul ...

  9. 一文综述python读写csv xml json文件各种骚操作

      Python优越的灵活性和易用性使其成为最受欢迎的编程语言之一,尤其是对数据科学家而言.这在很大程度上是因为使用Python处理大型数据集是很简单的一件事情. 如今,每家科技公司都在制定数据战略. ...

随机推荐

  1. lumisoft.net 邮件管理系列文章 - 如何判断附件为内嵌式还是附加式

    如果要区分邮件里面的附件是内嵌图片附件还是真正的附件,那么可以通过下面代码进行判断,如果是MIME_DispositionTypes.Attachment的就是普通附件,MIME_Dispositio ...

  2. 基于MySQL提供的Yum repository安装MySQL5.6

    基于MySQL提供的Yum repository安装MySQL5.6 1:下载YUM包 1.1切换到root用户: 1)su - root 2)wget http://dev.mysql.com/ge ...

  3. hive-drop-import-delims选项对oracle的clob无效

    工作过程中发现了用sqoop将oracle中的数据导入到hive时,会因为oracle中类型为clob的字段中存在换行时,会造成hive的数据错位.即使加上了 --hive-drop-import-d ...

  4. netcore webapi统一配置跨域问题

    修改startup类中的configure方法

  5. html5-figure和figcaption元素

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  6. Knowing is not enough; we must apply. Willing is not enough; we must do.

    Knowing is not enough; we must apply. Willing is not enough; we must do. 仅限于知道是不够的,我们必须去实践:单纯的希望是不够的 ...

  7. 使用函数式编程消除重复无聊的foreach代码(Scala示例)

    摘要:使用Scala语言为例,展示函数式编程消除重复无聊的foreach代码. 难度:中级 概述 大多数开发者在开发生涯里,会面对大量业务代码.而这些业务代码中,会发现有大量重复无聊的 foreach ...

  8. linux常用命令:rmdir 命令

    今天学习一下linux中命令: rmdir命令.rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的.(注意,rm - r dir命令可代替rmdir,但是有很大危险性.)删 ...

  9. Linux基础命令---join

    join 找出两个文件中相同的字段,根据相同字段合并两个文件,将合并结果显示到标准输出. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora ...

  10. 使用SpringBoot的优势。

    Spring Boot 让开发变得更简单 Spring Boot 对开发效率的提升是全方位的,我们可以简单做一下对比: 在没有使用 Spring Boot 之前我们开发一个 web 项目需要做哪些工作 ...