python读取excel-Python Pandas读取修改excel操作攻略
环境:python 3.6.8
以某米赛尔号举个例子吧:
>>> pd.read_excel('1.xlsx', sheet_name='Sheet2')
名字 等级 属性1 属性2 天赋
0 四九幻曦 100 自然 None 21
1 圣甲狂战 100 战斗 None 0
2 时空界皇 100 光 次元 27
我们在这里使用了pd.read_excel()函数来读取excel,来看一下read_excel()这个方法的API,这里只截选一部分经常使用的参数:
pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None)
io:很明显, 是excel文件的路径+名字字符串
(有中文的话python2的老铁需要使用decode()来解码成unicode字符串)
例如:
>>> pd.read_excel('例子'.decode('utf-8))
sheet_name:返回指定的sheet
如果将sheet_name指定为None,则返回全表
如果需要返回多个表, 可以将sheet_name指定为一个列表, 例如['sheet1', 'sheet2']
可以根据sheet的名字字符串或索引来值指定所要选取的sheet
>>> # 如:
>>> pd.read_excel('1.xlsx', sheet_name=0)
>>> pd.read_excel('1.xlsx', sheet_name='Sheet1')
>>> # 返回的是相同的 DataFrame
name:如果没有表头, 可用此参数传入列表做表头
header:指定数据表的表头,默认值为0, 即将第一行作为表头
index_col:用作行索引的列编号或者列名,如果给定一个序列则有多个行索引。一般可以设定index_col=False指的是pandas不适用第一列作为行索引。
usecols:读取指定的列, 也可以通过名字或索引值
>>> # 如:
>>> pd.read_excel('1.xlsx', sheet_name=1, usecols=['等级', '属性1'])
>>> pd.read_excel('1.xlsx', sheet_name=1, usecols=[1,2])
>>> # 返回的是相同的 DataFrame
直到某一天泰格尔升了一级, 可以这样改一下, 当然用.iloc或.loc对象都可以
>>> # 读取文件
>>> data = pd.read_excel("1.xlsx", sheet_name="Sheet1")
>>> # 找到 等级 这一列,再在这一列中进行比较
>>> data['等级'][data['名字'] == '泰格尔'] += 1
>>> print(data)
LOOK!他升级了!!
>>> data
名字 等级 属性1 属性2 天赋
0 艾欧里娅 100 自然 冰 29
1 泰格尔 81 电 战斗 16
2 布鲁克克 100 水 None 28
现在我们将它保存
data.to_excel('1.xlsx', sheet_name='Sheet1', index=False, header=True)
index:默认为True, 是否加行索引, 直接上图吧!
左为False, 右为True
header:默认为True, 是否加列标, 上图吧!
左为False, 右为True
而io, sheet_name参数用法同函数pd.read_excel()
如果我们多捕捉几只或者多加几种属性怎么办呢?这里给出参考:
新增列数据:
data['列名称'] = [值1, 值2, ......]
>>> data['特性'] = ['瞬杀', 'None', '炎火']
>>> data
名字 等级 属性1 属性2 天赋 特性
0 艾欧里娅 100 自然 冰 29 瞬杀
1 泰格尔 80 电 战斗 16 None
2 布鲁克克 100 水 None 28 炎火
新增行数据,这里行的num为excel中自动给行加的id数值
data.loc[行的num] = [值1, 值2, ...], (注意与.iloc的区别)
>>> data.loc[3] = ['小火猴', 1, '火', 'None', 31, 'None']
>>> data
名字 等级 属性1 属性2 天赋 特性
0 艾欧里娅 100 自然 冰 29 瞬杀
1 泰格尔 80 电 战斗 16 None
2 布鲁克克 100 水 None 28 炎火
3 小火猴 1 火 None 31 None
说完了增加一行或一列,那怎样删除一行或一列呢?可以使用.drop()函数
>>> # 删除列, 需要指定axis为1,当删除行时,axis为0
>>> data = data.drop('属性1', axis=1) # 删除`属性1`列
>>> data
名字 等级 属性2 天赋 特性
0 艾欧里娅 100 冰 29 瞬杀
1 泰格尔 80 战斗 16 None
2 布鲁克克 100 None 28 炎火
3 小火猴 1 None 31 None
>>> # 删除第3,4行,这里下表以0开始,并且标题行不算在类, axis用法同上
>>> data = data.drop([2, 3], axis=0)
>>> data
名字 等级 属性2 天赋 特性
0 艾欧里娅 100 冰 29 瞬杀
1 泰格尔 80 战斗 16 None
>>> # 保存
>>> data.to_excel('2.xlsx', sheet_name='Sheet1', index=False, header=True)
python读取excel-Python Pandas读取修改excel操作攻略相关推荐
- python pandas 读取excel 去重某一列_Python中Pandas读取修改excel操作攻略(代码示例)...
本篇文章给大家带来的内容是关于Python中Pandas读取修改excel操作攻略(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 环境:python 3.6.8 以某米赛 ...
- python pandas excel 修改列_Python中Pandas读取修改excel操作攻略(代码示例)
本篇文章给大家带来的内容是关于Python中Pandas读取修改excel操作攻略(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 环境:python 3.6.8 以某米赛 ...
- Python Pandas读取修改excel操作攻略
Python Pandas读取修改excel操作攻略 环境:python 3.6.8 以某米赛尔号举个例子吧: >>> pd.read_excel('1.xlsx', sheet_n ...
- Python语言学习之双下划线那些事:python和双下划线使用方法之详细攻略
Python语言学习之双下划线那些事:python和双下划线使用方法之详细攻略 目录 双下划线介绍 1.关于双下划线的函数或方法或属性 双下划线介绍 1.关于双下划线的函数或方法或属性 __name_ ...
- Python语言学习之文件夹那些事:python和文件夹的使用方法之详细攻略
Python语言学习之文件夹那些事:python和文件夹的使用方法之详细攻略 目录 Python与文件夹那些事 1.创建/删除文件/文件夹 1.创建文件夹
- Python爬虫辅助利器PyQuery模块的安装使用攻略
这篇文章主要介绍了Python爬虫辅助利器PyQuery模块的安装使用攻略,PyQuery可以方便地用来解析HTML内容,使其成为众多爬虫程序开发者的大爱,需要的朋友可以参考下 Windows下的安装 ...
- gta5汽车oracle2数据,《GTA5》全车辆数据修改图文教程攻略
<GTA5>全车辆数据修改图文教程攻略 2015-08-26 14:33:38来源:贴吧编辑:评论(0) <GTA5>中如何修改车辆数据?今天给大家带来玩家"1569 ...
- Python错误集锦:pandas读取excel提示ImportError: Missing optional dependency ‘xlrd’.
原文链接:http://www.juzicode.com/archives/3125 错误提示: 用pandas read_excel()方法读取xls或xlsx文件时,提示:ImportError: ...
- python pandas怎么修改Excel表格字体颜色?
在pandas中,可以通过样式设置来修改Excel表格的字体颜色.具体步骤如下: 第一步,读取Excel表格数据到DataFrame: import pandas as pd df = pd.read ...
- python教程-做个淘宝双十一满减攻略
今天是2021年10月29日,很快又到每年的购物狂欢节双十一购物节了. 从今天开始所有的python文章都是实战篇,介绍一些案例的开发.很多是其他微信公共账号的,前提是我自己都可以运行成功,我在这分享 ...
最新文章
- Java学完后可以从事的工作岗位分享
- 2019第一篇万字长文!30+家一线投资机构已出投资新策略...
- 是否可以将 json 反序列化为 dynamic 对象?
- JAVA入门级教学之(方法-4)
- 天天讲路由,那 Linux 路由到底咋实现的!?
- HTTP---Cookie
- 分布式事务模型--基于消息的分布式事务
- 几时几分几秒怎么写_头总是一阵一阵眩晕是怎么回事?眩晕症该如何治疗?
- 机器学习笔记(参考吴恩达机器学习视频笔记)16_决策树
- 简易计算器微信小程序项目源码
- android手机刷ios6,iOS8.4降级6.1.3教程 iPhone4s降级iOS6.1.3
- 《三体1》6.射手和农场主
- 炼数成金数据分析课程---13、回归分析
- 微信分享链接不显示缩略图
- 公司AppleID的申请详细流程
- 3.4只读存储器ROM
- CoCa: Contrastive Captioners are Image-Text Foundation Models翻译
- Unity3D找不到UI包的处理方法
- Token及Token经济
- 数据驱动产品增长 - 收藏集 - 掘金
热门文章
- 华为FusionSphere概述——计算资源、存储资源、网络资源的虚拟化,同时对这些虚拟资源进行集中调度和管理...
- Facebook图片存储系统Haystack——存小文件,本质上是将多个小文件合并为一个大文件来降低io次数,meta data里存偏移量...
- Proxy代理 和 Reflect反射(反射的是obj)的概念
- mysql 速度优化
- SQL server 行转列 列转行
- 处理视频小工具 -- ffmpeg
- Android中开发习惯
- javaweb项目中的过滤器的使用
- CentOS 6.7 如何启用中文输入法
- Tomcat学习过程