python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)


Posted in Python onAugust 06, 2019

df是一个dataframe,列名为A B C D

具体值如下:

A B C D
0 ss 小红 8
1 aa 小明 d
4 f f
6 ak 小紫 7

dataframe里的属性是不定的,空值默认为NA。

一、选取标签为A和C的列,并且选完类型还是dataframe

df = df.loc[:, ['A', 'C']]
df = df.iloc[:, [0, 2]]

二、选取标签为C并且只取前两行,选完类型还是dataframe

df = df.loc[0:2, ['A', 'C']] 
df = df.iloc[0:2, [0, 2]]

聪明的朋友已经看出iloc和loc的不同了:loc是根据dataframe的具体标签选取列,而iloc是根据标签所在的位置,从0开始计数。

","前面的":"表示选取整列,第二个示例中的的0:2表示选取第0行到第二行,这里的0:2相当于[0,2)前闭后开,2是不在范围之内的。

需要注意的是,如果是df = df.loc[0:2, ['A', 'C']]或者df = df.loc[0:2, ['A', 'C']],切片之后类型依旧是dataframe,不能直接进行

加减乘除等操作的,比如dataframe的一列是数学成绩(shuxue),另一列为语文成绩(yuwen),现在需要求两门课程的总和。可以使用df['shuxue'] + df['yuwen'](选取完之后类型为series)来获得总分,而不能使用df.iloc[:,[2]]+df.iloc[:,[1]]或df.iloc[:,['shuxue']]+df.iloc[:,['yuwen']],这会产生错误结果。

还有一种方式是使用df.icol(i)来选取列,选取完的也不是dataframe而是series,i为该列所在的位置,从0开始计数。

如果你想要选取某一行的数据,可以使用df.loc[[i]]或者df.iloc[[i]]。

以上这篇python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解Python的Django框架中inclusion_tag的使用
Jul 21 Python
从局部变量和全局变量开始全面解析Python中变量的作用域
Jun 16 Python
Python学习笔记之解析json的方法分析
Apr 21 Python
Python 逐行分割大txt文件的方法
Oct 10 Python
python中使用PIL制作并验证图片验证码
Mar 15 Python
Python随机函数random()使用方法小结
Apr 29 Python
pandas使用get_dummies进行one-hot编码的方法
Jul 10 Python
python调用c++ ctype list传数组或者返回数组的方法
Feb 13 Python
set在python里的含义和用法
Jun 24 Python
浅谈python中统计计数的几种方法和Counter详解
Nov 07 Python
Python实现使用dir获取类的方法列表
Dec 24 Python
基于Python中random.sample()的替代方案
May 23 Python
PyQt 图解Qt Designer工具的使用方法
Aug 06 #Python
Python 用matplotlib画以时间日期为x轴的图像
Aug 06 #Python
Django Python 获取请求头信息Content-Range的方法
Aug 06 #Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
Aug 06 #Python
django foreignkey外键使用的例子 相当于left join
Aug 06 #Python
Python Django简单实现session登录注销过程详解
Aug 06 #Python
Django框架中序列化和反序列化的例子
Aug 06 #Python
You might like
PHP递归复制、移动目录的自定义函数分享
2014/11/18 PHP
php延迟静态绑定实例分析
2015/02/08 PHP
php压缩和解压缩字符串的方法
2015/03/14 PHP
php Session无效分析资料整理
2016/11/29 PHP
B/S模式项目中常用的javascript汇总
2013/12/17 Javascript
解析JavaScript的ES6版本中的解构赋值
2015/07/28 Javascript
js实现的鼠标滚轮滚动切换页面效果(类似360默认页面滚动切换效果)
2016/01/27 Javascript
JavaScript获取对象在页面中位置坐标的方法
2016/02/03 Javascript
JavaScript中对JSON对象的基本操作示例
2016/05/21 Javascript
微信小程序 textarea 详解及简单使用方法
2016/12/05 Javascript
JS中静态页面实现微信分享功能
2017/02/06 Javascript
Angular实现跨域(搜索框的下拉列表)
2017/02/16 Javascript
学习使用Bootstrap栅格系统
2017/05/11 Javascript
手把手教你vue-cli单页到多页应用的方法
2018/05/31 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
浅析JS中NEW的实现原理及重写
2020/02/20 Javascript
详解JavaScript执行模型
2020/11/16 Javascript
[01:05:40]VG vs Newbee 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python实现基于权重的随机数2种方法
2015/04/28 Python
详解Django中Request对象的相关用法
2015/07/17 Python
Python中的descriptor描述器简明使用指南
2016/06/02 Python
python使用fcntl模块实现程序加锁功能示例
2017/06/23 Python
Python pymongo模块用法示例
2018/03/31 Python
对numpy中数组元素的统一赋值实例
2018/04/04 Python
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
django解决订单并发问题【推荐】
2019/07/31 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
Python是怎样处理json模块的
2020/07/16 Python
python 解决pycharm运行py文件只有unittest选项的问题
2020/09/01 Python
荷兰电脑专场:Paradigit
2018/05/05 全球购物
Otiumberg官网:英国半精致珠宝品牌
2021/01/16 全球购物
户外用品商店创业计划书
2014/01/29 职场文书
技校毕业生自荐书
2014/05/23 职场文书
出生公证书
2015/01/23 职场文书
2015年圣诞节寄语
2015/08/17 职场文书
MySQL如何使备份得数据保持一致
2022/05/02 MySQL