excel处置4000行数据卡_Pandas读取并修改excel的示例代码
一、前言
最近总是和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的示例代码相关推荐
- excel处置4000行数据卡_【Excel技巧】在Excel中奇偶行提取和奇偶行筛选方法
今天我给大家讲一个人人都会使用,都能用到的excel教程,那就是在Excel中奇偶行提取和奇偶行筛选方法,以下一共分两部分为大家讲解excel中奇偶行的提取与筛选的方法. 第一.excel偶数行提取 ...
- excel处置4000行数据卡_数十万数据Excel数据不好处理怎么办?几行Python搞定
电商行业,每月有上百万条订单发货数据需要与仓库的数据进行核对计算,涉及到数据计算,筛选,匹配等步骤,用excel表超级卡,并且经常卡死. 这时如果你会Python,十几行代码就可以搞定. 这里需要两个 ...
- excel处置4000行数据卡_数十万数据Excel数据不好处理怎么办?
文章转载自:微信公众号 Python的乐趣 作者:一粒米饭 比如像电商行业,每月有上百万条订单发货数据需要与仓库的数据进行核对计算,涉及到数据计算,筛选,匹配等步骤,用excel表超级卡,并且经常卡死 ...
- excel处置4000行数据卡_【R语言】5行代码批量合并Excel文件,并增加文件来源列...
看到一篇文章, 裴帅帅:Python使用9行代码批量合并Excel文件zhuanlan.zhihu.com 咱们R语言也不能落后啊,5行代码批量合并Excel文件,再多做一步:增加文件来源列. 说是 ...
- excel处置4000行数据卡_懂Excel就能轻松入门Python数据分析包pandas(三):制作成绩条...
系列文章: 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器-- pandas 前言 很 ...
- python如何清空excel表格_python 删除excel表格重复行,数据预处理操作
使用python删除excel表格重复行. # 导入pandas包并重命名为pd import pandas as pd # 读取Excel中Sheet1中的数据 data = pd.DataFram ...
- excel文件每行数据按模板批量导出为一个excel文件
程序下载: 程序正在完善中,愿意参与测试的朋友请在评论区留下邮箱. 去年有网友向我提出定制开发这样一个程序,就是excel文件每行数据生成一个单独的excel文件,插入对应的二维码图片,我猜测应该是根 ...
- python获取excel数据进行判断输出结果到excel,如何使用python xlrd/xlwt从一个excel工作簿提取数据并输出到另一个excel工作簿?...
我正在为xlutils.xlrd和xlwt创建一个名为excel functions的类,最终我可能会创建一个库.如果你有兴趣帮我做一个删除工作表的功能. 您可能希望转向openpyxl和/或pyex ...
- excel表格导入matlab并画等高线,#如何将excel表格中大量数据导入matlab中并作图#excel表格里的自由画笔...
怎样在已经制好的excel图表中插入新的数据制图 1,在excel里面你直接选中数据然击插入图表就可以啦~ 2要是想实时更新数据源可以尝试下用BDP版,只需要导入一次数据,选择并保存你想要的模板就可以 ...
- python 批量读取xlsx并合并_python合并多个excel表格数据-python如何读取多个excel合并到一个excel中...
python如何读取多个excel合并到一个excel中 思路 利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文 ...
最新文章
- 一些定义–测试技术9
- Servlet中的监听器
- 新手silverlight练习--五子棋( 二 )
- 解决ORA-21561: OID generation failed
- Goroutine Local Storage的一些实现方案和必要性讨论
- jquery获取iframe里的js事件
- 计算机专业自我总结1000字,计算机专业自我鉴定范文1000字
- javasript ide
- 计算机网络实验——ns3仿真最短路由选择算法
- 计算机信息管理专业 英文,计算机信息管理专业英文简历范文
- android 蓝牙自动断开,Android蓝牙:连接()/断开()
- 一文详解工业视觉中的光源及应用
- PHP上传图片至OSS
- 大学期间能考的计算机证书,大学期间可以考哪些证书?过来人告诉你这3大类最有用!...
- python爬取ajax动态内容肯德基门店_新手爬虫.全国KFC门店地址抓取.
- 有自闭症,怎么和周围人相处?
- 赵小楼《天道》《遥远的救世主》深度解析(119)你想怎么活?没有对错,只有适合
- 如何让项目开发提速?
- KVM学习(四)windows server半虚拟化驱动virtio
- 最土团购支付成功但显示未付款