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中的jquery PyQuery库使用小结
May 13 Python
Python通过解析网页实现看报程序的方法
Aug 04 Python
python入门之语句(if语句、while语句、for语句)
Jan 19 Python
Python中join函数简单代码示例
Jan 09 Python
python 对dataframe下面的值进行大规模赋值方法
Jun 09 Python
Django数据库连接丢失问题的解决方法
Dec 29 Python
对Python+opencv将图片生成视频的实例详解
Jan 08 Python
python assert的用处示例详解
Apr 01 Python
Python自定义函数计算给定日期是该年第几天的方法示例
May 30 Python
python破解bilibili滑动验证码登录功能
Sep 11 Python
Pandas时间序列:重采样及频率转换方式
Dec 26 Python
Python list运算操作代码实例解析
Jan 20 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使用PDO方法详解
2014/12/27 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
2016/06/13 PHP
PHP自定义函数获取URL中一级域名的方法
2016/08/23 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
2016/10/12 PHP
PHP goto语句用法实例
2019/08/06 PHP
js鼠标滑过弹出层的定位IE6bug解决办法
2012/12/26 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
在AngularJS中使用jQuery的zTree插件的方法
2016/04/21 Javascript
Ionic实现页面下拉刷新(ion-refresher)功能代码
2016/06/03 Javascript
jQuery实现用户输入自动完成功能
2017/02/13 Javascript
JQueryMiniUI按照时间进行查询的实现方法
2017/06/07 jQuery
JS实现导出Excel的五种方法详解【附源码下载】
2018/03/15 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
利用Celery实现Django博客PV统计功能详解
2017/05/08 Python
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
2018/04/26 Python
python获取url的返回信息方法
2018/12/17 Python
Python使用paramiko操作linux的方法讲解
2019/02/25 Python
Pandas之DataFrame对象的列和索引之间的转化
2019/06/25 Python
Python对接 xray 和微信实现自动告警
2019/09/17 Python
pandas 中对特征进行硬编码和onehot编码的实现
2019/12/20 Python
Pytorch实现LSTM和GRU示例
2020/01/14 Python
python如何快速拼接字符串
2020/10/28 Python
Python爬虫中Selenium实现文件上传
2020/12/04 Python
实例讲解使用HTML5 Canvas绘制阴影效果的方法
2016/03/25 HTML / CSS
Original Penguin美国官网:布拉德皮特、强尼德普喜爱的服装品牌
2016/10/25 全球购物
趣味游戏活动方案
2014/02/07 职场文书
《恐龙》教学反思
2014/04/27 职场文书
团日活动总结报告
2014/06/25 职场文书
关于感恩的演讲稿500字
2014/08/26 职场文书
党员个人整改方案及措施
2014/10/25 职场文书
分居协议书范本
2014/11/03 职场文书
淘宝文案策划岗位职责
2015/04/14 职场文书