一、前言

最近总是和excel打交道,由于数据量较大,人工来修改某些数据可能会有点浪费时间,这时候就使用到了Python数据处理的神器—–Pandas库,话不多说,直接上Pandas。

二、安装

这次使用的python版本是python2.7,安装python可以去python的官网进行下载,这里不多说了。

安装完成后使用Python自带的包管理工具pip可以很快的安装pandas。

pip install pandas

如果使用的是Anaconda安装的Python,会自带pandas。

三、read_excel()介绍

首先可以先创建一个excel文件当作实验数据,名称为example.xlsx,内容如下:

这里是很简单的几行数据,我们来用pandas实际操作一下这个excel表。

# coding:utf-8
import pandas as pddata = pd.read_excel('example.xlsx', sheet_name='Sheet1')
print data

结果如下:

这里使用了read_excel()方法来读取excel,来看一个read_excel()这个方法的API,这里只截选一部分经常使用的参数:

pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None)

这里主要参数为io,sheet_name,header,usecols和names

  • io:excel文件,如果命名为中文,在python2.7中,需要使用decode()来解码成unicode字符串,例如: pd.read_excel('示例'.decode('utf-8))
  • sheet_name:返回指定的sheet,如果将sheet_name指定为None,则返回全表,如果需要返回多个表,可以将sheet_name指定为一个列表,例如['sheet1', 'sheet2']
  • header:指定数据表的表头,默认值为0,即将第一行作为表头。
  • usecols:读取指定的列,例如想要读取第一列和第二列数据:

pd.read_excel("example.xlsx", sheet_name=None, usecols=[0, 1])

四、使用

这里先来一个在机器学习中经常使用的:将所有gender为male的值改为0,female改为1。

# coding:utf-8
import pandas as pd
from pandas import DataFrame# 读取文件
data = pd.read_excel("example.xlsx", sheet_name="Sheet1")# 找到gender这一列,再在这一列中进行比较
data['gender'][data['gender'] == 'male'] = 0
data['gender'][data['gender'] == 'female'] = 1
print data 

结果如下:

需要注意的是,这里的data为excel数据的一份拷贝,对data进行修改并不会直接影响到我们原来的excel,必须在修改后保存才能够修改excel。保存的代码如下:

DataFrame(data).to_excel('example.xlsx', sheet_name='Sheet1', index=False, header=True)

这时候我们再打开example.xlsx文件看看是否更改了:

如果我们想要新增加一列或者一行数据怎么办呢?这里给出参考:

新增列数据:

data['列名称'] = None

新增行数据,这里行的num为excel中自动给行加的id数值

data.loc[行的num] =[值1, 值2, ...]

以上面的数据为例:

# coding:utf-8
import pandas as pd
from pandas import DataFramedata = pd.read_excel("example.xlsx", sheet_name='Sheet1')# 增加行数据,在第5行新增
data.loc[5] = ['James', 32, 'male']# 增加列数据,给定默认值None
data['profession'] = None# 保存数据
DataFrame(data).to_excel('example.xlsx', sheet_name='Sheet1', index=False, header=True) 

打开excel看到的结果如下:

说完了增加一行或一列,那怎样删除一行或一列呢?

import pandas as pd
from pandas import DataFramedata = pd.read_excel("example.xlsx", sheet_name='Sheet1')# 删除gender列,需要指定axis为1,当删除行时,axis为0
data = data.drop('gender', axis=1)# 删除第3,4行,这里下表以0开始,并且标题行不算在类
data = data.drop([2, 3], axis=0)# 保存
DataFrame(data).to_excel('example.xlsx', sheet_name='Sheet1', index=False, header=True)

这时候打开excel可以看见gender列和除标题行的第3,4行被删除了。

excel处置4000行数据卡_Pandas读取并修改excel的示例代码相关推荐

  1. excel处置4000行数据卡_【Excel技巧】在Excel中奇偶行提取和奇偶行筛选方法

    今天我给大家讲一个人人都会使用,都能用到的excel教程,那就是在Excel中奇偶行提取和奇偶行筛选方法,以下一共分两部分为大家讲解excel中奇偶行的提取与筛选的方法. 第一.excel偶数行提取 ...

  2. excel处置4000行数据卡_数十万数据Excel数据不好处理怎么办?几行Python搞定

    电商行业,每月有上百万条订单发货数据需要与仓库的数据进行核对计算,涉及到数据计算,筛选,匹配等步骤,用excel表超级卡,并且经常卡死. 这时如果你会Python,十几行代码就可以搞定. 这里需要两个 ...

  3. excel处置4000行数据卡_数十万数据Excel数据不好处理怎么办?

    文章转载自:微信公众号 Python的乐趣 作者:一粒米饭 比如像电商行业,每月有上百万条订单发货数据需要与仓库的数据进行核对计算,涉及到数据计算,筛选,匹配等步骤,用excel表超级卡,并且经常卡死 ...

  4. excel处置4000行数据卡_【R语言】5行代码批量合并Excel文件,并增加文件来源列...

    看到一篇文章, 裴帅帅:Python使用9行代码批量合并Excel文件​zhuanlan.zhihu.com 咱们R语言也不能落后啊,5行代码批量合并Excel文件,再多做一步:增加文件来源列. 说是 ...

  5. excel处置4000行数据卡_懂Excel就能轻松入门Python数据分析包pandas(三):制作成绩条...

    系列文章: 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器-- pandas 前言 很 ...

  6. python如何清空excel表格_python 删除excel表格重复行,数据预处理操作

    使用python删除excel表格重复行. # 导入pandas包并重命名为pd import pandas as pd # 读取Excel中Sheet1中的数据 data = pd.DataFram ...

  7. excel文件每行数据按模板批量导出为一个excel文件

    程序下载: 程序正在完善中,愿意参与测试的朋友请在评论区留下邮箱. 去年有网友向我提出定制开发这样一个程序,就是excel文件每行数据生成一个单独的excel文件,插入对应的二维码图片,我猜测应该是根 ...

  8. python获取excel数据进行判断输出结果到excel,如何使用python xlrd/xlwt从一个excel工作簿提取数据并输出到另一个excel工作簿?...

    我正在为xlutils.xlrd和xlwt创建一个名为excel functions的类,最终我可能会创建一个库.如果你有兴趣帮我做一个删除工作表的功能. 您可能希望转向openpyxl和/或pyex ...

  9. excel表格导入matlab并画等高线,#如何将excel表格中大量数据导入matlab中并作图#excel表格里的自由画笔...

    怎样在已经制好的excel图表中插入新的数据制图 1,在excel里面你直接选中数据然击插入图表就可以啦~ 2要是想实时更新数据源可以尝试下用BDP版,只需要导入一次数据,选择并保存你想要的模板就可以 ...

  10. python 批量读取xlsx并合并_python合并多个excel表格数据-python如何读取多个excel合并到一个excel中...

    python如何读取多个excel合并到一个excel中 思路 利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文 ...

最新文章

  1. 一些定义–测试技术9
  2. Servlet中的监听器
  3. 新手silverlight练习--五子棋( 二 )
  4. 解决ORA-21561: OID generation failed
  5. Goroutine Local Storage的一些实现方案和必要性讨论
  6. jquery获取iframe里的js事件
  7. 计算机专业自我总结1000字,计算机专业自我鉴定范文1000字
  8. javasript ide
  9. 计算机网络实验——ns3仿真最短路由选择算法
  10. 计算机信息管理专业 英文,计算机信息管理专业英文简历范文
  11. android 蓝牙自动断开,Android蓝牙:连接()/断开()
  12. 一文详解工业视觉中的光源及应用
  13. PHP上传图片至OSS
  14. 大学期间能考的计算机证书,大学期间可以考哪些证书?过来人告诉你这3大类最有用!...
  15. python爬取ajax动态内容肯德基门店_新手爬虫.全国KFC门店地址抓取.
  16. 有自闭症,怎么和周围人相处?
  17. 赵小楼《天道》《遥远的救世主》深度解析(119)你想怎么活?没有对错,只有适合
  18. 如何让项目开发提速?
  19. KVM学习(四)windows server半虚拟化驱动virtio
  20. 最土团购支付成功但显示未付款

热门文章

  1. 一道简单的题学到的东西
  2. VS2013中为C++程序生成lib和dll文件
  3. 论文阅读笔记(六)——GhostNet: More Features from Cheap Operations
  4. #ifndef #define #endif用法理解
  5. 单页面登录——编码传参(oa会对#号会进行截断)
  6. Angular2 的 View Encapsulation(样式封装)
  7. matplotlib可视化学习笔记
  8. 【生活相关】实验室专题研讨PPT模板说明备忘
  9. 【软件使用技巧】一(截图)
  10. Linux通过Shell进行数学运算