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使用str & repr转换字符串
Oct 13 Python
Python数据分析之如何利用pandas查询数据示例代码
Sep 01 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
Mar 13 Python
使用pandas中的DataFrame数据绘制柱状图的方法
Apr 10 Python
Python带动态参数功能的sqlite工具类
May 26 Python
django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决
Jul 13 Python
python得到单词模式的示例
Oct 15 Python
在Python文件中指定Python解释器的方法
Feb 18 Python
Python3转换html到pdf的不同解决方案
Mar 11 Python
Python实现的北京积分落户数据分析示例
Mar 27 Python
Keras实现将两个模型连接到一起
May 23 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
Jun 30 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 文件扩展名 获取函数
2009/06/03 PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
2016/06/13 PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
2020/12/29 PHP
一段利用WSH获取登录时间的jscript代码
2008/05/11 Javascript
jQuery对象[0]是什么含义?
2010/07/31 Javascript
jquery插件jTimer(jquery定时器)使用方法
2013/12/23 Javascript
jQuery获得document和window对象宽度和高度的方法
2015/03/25 Javascript
jQuery unbind()方法实例详解
2016/01/19 Javascript
BootStrap创建响应式导航条实例代码
2016/05/31 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
浅谈Node.js:理解stream
2016/12/08 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
AngularJS  ng-repeat遍历输出的用法
2017/06/19 Javascript
每天学点Vue源码之vm.$mount挂载函数
2019/03/11 Javascript
微信打开网址添加在浏览器中打开提示的办法
2019/05/20 Javascript
使用jquery-easyui的布局layout写后台管理页面的代码详解
2019/06/19 jQuery
vue操作dom元素的3种方法示例
2020/09/20 Javascript
浅析Python多线程下的变量问题
2015/04/28 Python
以windows service方式运行Python程序的方法
2015/06/03 Python
python实现守护进程、守护线程、守护非守护并行
2018/05/05 Python
基于Python实现迪杰斯特拉和弗洛伊德算法
2020/05/27 Python
python做反被爬保护的方法
2019/07/01 Python
python使用numpy实现直方图反向投影示例
2020/01/17 Python
Django缓存Cache使用详解
2020/11/30 Python
python 实现图片裁剪小工具
2021/02/02 Python
Black Halo官方网站:购买连衣裙、礼服和连体裤
2018/06/13 全球购物
消防战士优秀事迹材料
2014/02/13 职场文书
管理部副部长岗位职责范文
2014/03/09 职场文书
机电专业毕业生求职信
2014/07/01 职场文书
购房公证委托书(2014版)
2014/09/12 职场文书
村委会贫困证明范文
2014/09/21 职场文书
司机岗位职责范本
2015/04/10 职场文书
英语投诉信范文
2015/07/03 职场文书
六五普法学习心得体会
2016/01/21 职场文书
建房合同协议书
2016/03/21 职场文书