pandas抽取行列数据的几种方法


Posted in Python onDecember 13, 2020

取行和列的几种常用方式:

data[ 列名 ]: 取单列或多列,不能用连续方式取,也不能用于取行。
data.列名: 只用于取单列,不能用于行。
data[ i:j ]: 用起始行下标(i)和终止行下标(j)取单行或者连续多行,不能用于列的选取。
data.loc[行名,列名]: 用对象的.loc[]方法实现各种取数据方式。
data.iloc[行下标,列下标]: 用对象的.iloc[]方法实现各种取数据方式。

首先生成一个DataFrame对象:

import pandas as pd
score = [[34,67,87],[68,98,58],[75,73,86],[94,59,81]]
name = ['小新','小红','小李']
course = ['语文','数学','英语','政治']
mydata = pd.DataFrame(data=score,columns=name,index=course)#指定行列名
print(mydata)

小新  小红  小李
语文  34  67  87
数学  68  98  58
英语  75  73  86
政治  94  59  81

1. 直接用列名抽取单列或多列 ? data[列名]

print(mydata['小红']) # 输出是一个Series对象,而不是DataFrame对象
语文 67
数学 98
英语 73
政治 59 

print(mydata[['小红']]) # 加了[],此时输出的是DataFrame对象
 小红
语文 67
数学 98
英语 73
政治 59

print(mydata[['小红','小李']]) #选择两列,此时必须用[]将两列括起来
 小红 小李
语文 67 87
数学 98 58
英语 73 86
政治 59 81

2. 用行所在矩阵索引抽取一个行或者连续多行数据

print(mydata[0:1]) #通过0:1选择了第0行
 小新 小红 小李
语文 34 67 87

mydata[0:3] #通过0:3选择了第0,1,2三行
 小新 小红 小李
语文 34 67 87
数学 68 98 58
英语 75 73 86

3. 用数据的“·”方式获取某一列数据

print(mydata.小红) #通过.小红选择了小红列,注意输出的是Series对象
语文 67
数学 98
英语 73
政治 59

4. panadas 中利用DataFrame对象的.loc[,]、.iloc[,]方法抽取数据

引例:

import pandas as pd
score = [[34,67,87],[68,98,58],[75,73,86],[94,59,81]]
name = ['小新','小红','小李']
course = ['语文','数学','英语','政治']
mydata1 = pd.DataFrame(data=score,columns=name,index=course) # 指定行名(index)和列名(columns)
print(mydata1)
mydata2 = pd.DataFrame(score) # 不指定行列名,默认使用0,1,2……
print(mydata2)

    小明  小红  小李
语文  34  67  87
数学  68  98  58
英语  75  73  86
政治  94  59  81
    0   1   2
0  34  67  87
1  68  98  58
2  75  73  86
3  94  59  81

DataFrame对象的.loc[]和.iloc[]方法都可用于抽取数据,区别是:

  • .loc[]: 以列名和行名作为参数。
  • .iloc[]: 以二维矩阵的位置指标(即0,1,2……)作为参数。

.loc[]语法:

有两个输入参数,第一个指定行名,第二个指定列名。当只有一个参数时,默认是行名(即抽取整行),所有列都选中。

.iloc[]语法:

有两个输入参数,第一个指定行位置,第二个指定列位置。当只有一个参数时,默认是行位置(即抽取整行),所有列都选中。

总结:

当需要选中所有行的某几列时,行参数可以省略,列参数需要指定,此时列参数前面必须带上“,:”,形如.loc[:,列参数],.iloc[:,列参数]。

两种方法当只指定一个输入参数时,都默是跟“行”相关,而“列”则全部被选中。如何行和列都需要指定时,中间用“逗号,”隔开,这非常重要,否则出错。

两个方法都接受两个参数,第一个是“行标签”或者“矩阵行号”,第二个是“列标签”或者“矩阵列号”。

学习链接:

到此这篇关于pandas抽取行列数据的几种方法的文章就介绍到这了,更多相关pandas抽取行列数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现的数据结构与算法之双端队列详解
Apr 22 Python
对Python的Django框架中的项目进行单元测试的方法
Apr 11 Python
Python绑定方法与非绑定方法详解
Aug 18 Python
python实现简单中文词频统计示例
Nov 08 Python
Python匿名函数及应用示例
Apr 09 Python
TensorFlow实现指数衰减学习率的方法
Feb 05 Python
基于python3生成标签云代码解析
Feb 18 Python
python + selenium 刷B站播放量的实例代码
Jun 12 Python
selenium如何定位span元素的实现
Jan 13 Python
如何使用Python进行PDF图片识别OCR
Jan 22 Python
flask框架中的cookie和session使用
Jan 31 Python
python 多态 协议 鸭子类型详解
Nov 27 Python
python3.9实现pyinstaller打包python文件成exe
Dec 13 #Python
Pandas中两个dataframe的交集和差集的示例代码
Dec 13 #Python
使用pandas实现筛选出指定列值所对应的行
Dec 13 #Python
Pandas DataFrame求差集的示例代码
Dec 13 #Python
pandas实现导出数据的四种方式
Dec 13 #Python
python绘图pyecharts+pandas的使用详解
Dec 13 #Python
Pandas对每个分组应用apply函数的实现
Dec 13 #Python
You might like
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
php实现比较两个字符串日期大小的方法
2015/05/12 PHP
PHP MVC框架路由学习笔记
2016/03/02 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
Laravel实现ApiToken认证请求
2019/10/14 PHP
写了一个layout,拖动条连贯,内容区可为iframe
2007/08/19 Javascript
『jQuery』名称冲突使用noConflict方法解决
2013/04/22 Javascript
jquery对dom的操作常用方法整理
2013/06/25 Javascript
解析页面加载与js函数的执行 onload or ready
2013/12/12 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
jQuery读取XML文件内容的方法
2015/03/09 Javascript
jQuery插件zTree实现删除树节点的方法示例
2017/03/08 Javascript
js a标签点击事件
2017/03/30 Javascript
从组件封装看Vue的作用域插槽的实现
2019/02/12 Javascript
微信小程序获取用户信息并保存登录状态详解
2019/05/10 Javascript
javascript 设计模式之组合模式原理与应用详解
2020/04/08 Javascript
如何在微信小程序中使用骨架屏的步骤
2020/06/12 Javascript
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
2017/08/08 Python
PyQt5每天必学之切换按钮
2020/08/20 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
Django 限制用户访问频率的中间件的实现
2018/08/23 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
2019/07/22 Python
python 五子棋如何获得鼠标点击坐标
2019/11/04 Python
基于python调用psutil模块过程解析
2019/12/20 Python
用HTML5制作视频拼图的教程
2015/05/13 HTML / CSS
中国最大的名表商城:万表网
2016/08/29 全球购物
Expedia英国:全球最大的在线旅游公司
2017/09/07 全球购物
日本食品网上商店:JaponShop.com
2017/11/28 全球购物
高品质和独特的产品世界:Creations and Collections
2018/01/07 全球购物
Spotahome意大利:公寓和房间出租
2020/02/21 全球购物
华为c/c++笔试题
2016/01/25 面试题
加油口号大全
2014/06/13 职场文书
妇联领导班子剖析材料
2014/08/21 职场文书
小学教师暑期培训方案
2014/08/28 职场文书
教师党员自我剖析材料
2014/09/29 职场文书
「天才王子的赤字国家重生术」妮妮姆·拉雷粘土人开订
2022/03/21 日漫