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判断操作系统类型代码分享
Nov 22 Python
基于python的Tkinter实现一个简易计算器
Dec 31 Python
python奇偶行分开存储实现代码
Mar 19 Python
使用python读取txt文件的内容,并删除重复的行数方法
Apr 18 Python
python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现
Jun 11 Python
Flask框架响应、调度方法和蓝图操作实例分析
Jul 24 Python
通过python将大量文件按修改时间分类的方法
Oct 17 Python
Python函数装饰器实现方法详解
Dec 22 Python
Python学习笔记之函数的定义和作用域实例详解
Aug 13 Python
Python英文文章词频统计(14份剑桥真题词频统计)
Oct 13 Python
pytorch 准备、训练和测试自己的图片数据的方法
Jan 10 Python
基于python实现监听Rabbitmq系统日志代码示例
Nov 28 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设计模式 注册表模式
2012/02/05 PHP
PHP数据过滤的方法
2013/10/30 PHP
PHP之uniqid()函数用法
2014/11/03 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
php短信接口代码
2016/05/13 PHP
Yii2框架使用计划任务的方法
2016/05/25 PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
2017/11/06 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
2019/10/21 PHP
js单向链表的具体实现实例
2013/06/21 Javascript
页面载入结束自动调用js函数示例
2013/09/23 Javascript
使用JQuery 加载页面时调用JS的实现方法
2016/05/30 Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
2016/08/18 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
总结javascript三元运算符知识点
2018/09/28 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
python网络编程学习笔记(四):域名系统
2014/06/09 Python
python 3.5实现检测路由器流量并写入txt的方法实例
2017/12/17 Python
tensorflow训练中出现nan问题的解决
2018/02/10 Python
python yield关键词案例测试
2019/10/15 Python
python用quad、dblquad实现一维二维积分的实例详解
2019/11/20 Python
python3 tcp的粘包现象和解决办法解析
2019/12/09 Python
python如何进行矩阵运算
2020/06/05 Python
Python定义一个Actor任务
2020/07/29 Python
Python中Yield的基本用法
2020/10/18 Python
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
KEETSA环保床垫:更好的睡眠,更好的生活!
2016/11/24 全球购物
澳洲网红粉泥面膜:Sand & Sky
2019/08/13 全球购物
端口镜像是怎么实现的
2014/03/25 面试题
会计专业应届生自荐信
2014/02/07 职场文书
2014年入党积极分子党校培训心得体会
2014/07/08 职场文书
教师工作失职检讨书
2014/09/18 职场文书
2015教师节师德演讲稿
2015/03/19 职场文书
Python数据分析之pandas读取数据
2021/06/02 Python
简单聊一聊SQL注入及防止SQL注入
2022/03/23 MySQL