pandas取dataframe特定行列的实现方法


Posted in Python onMay 24, 2021

1.按列取、按索引/行取、按特定行列取

import numpy as np
from pandas import DataFrame
import pandas as pd
 
 
df=DataFrame(np.arange(12).reshape((3,4)),index=['one','two','thr'],columns=list('abcd'))
 
df['a']#取a列
df[['a','b']]#取a、b列
 
#ix可以用数字索引,也可以用index和column索引
df.ix[0]#取第0行
df.ix[0:1]#取第0行
df.ix['one':'two']#取one、two行
df.ix[0:2,0]#取第0、1行,第0列
df.ix[0:1,'a']#取第0行,a列
df.ix[0:2,'a':'c']#取第0、1行,abc列
df.ix['one':'two','a':'c']#取one、two行,abc列
df.ix[0:2,0:1]#取第0、1行,第0列
df.ix[0:2,0:2]#取第0、1行,第0、1列
 
#loc只能通过index和columns来取,不能用数字
df.loc['one','a']#one行,a列
df.loc['one':'two','a']#one到two行,a列
df.loc['one':'two','a':'c']#one到two行,a到c列
df.loc['one':'two',['a','c']]#one到two行,ac列
 
#iloc只能用数字索引,不能用索引名
df.iloc[0:2]#前2行
df.iloc[0]#第0行
df.iloc[0:2,0:2]#0、1行,0、1列
df.iloc[[0,2],[1,2,3]]#第0、2行,1、2、3列
 
#iat取某个单值,只能数字索引
df.iat[1,1]#第1行,1列
#at取某个单值,只能index和columns索引
df.at['one','a']#one行,a列

2.按条件取行

选取等于某些值的行记录 用 ==
df.loc[df[‘column_name'] == some_value]
 
选取某列是否是某一类型的数值 用 isin
df.loc[df[‘column_name'].isin(some_values)]
 
多种条件的选取 用 &
df.loc[(df[‘column'] == some_value) & df[‘other_column'].isin(some_values)]
 
选取不等于某些值的行记录 用 !=
df.loc[df[‘column_name'] != some_value]
 
isin返回一系列的数值,如果要选择不符合这个条件的数值使用~
df.loc[~df[‘column_name'].isin(some_values)]

3.取完之后替换

df = pd.DataFrame({"id": [25,53,15,47,52,54,45,9], "sex": list('mfmfmfmf'), 'score': [1.2, 2.3, 3.4, 4.5,6.4,5.7,5.6,4.3],"name":['daisy','tony','peter','tommy','ana','david','ken','jim']})

pandas取dataframe特定行列的实现方法

将男性(m)替换为1,女性(f)替换为0

方法1:

df.ix[df['sex']=='f','sex']=0
df.ix[df['sex']=='m','sex']=1

pandas取dataframe特定行列的实现方法

注:在上面的代码中,逗号后面的‘sex'起到固定列名的作用

方法2:

df.sex[df['sex']=='m']=1
df.sex[df['sex']=='f']=0  

4.删除特定行

# 要删除列“score”<50的所有行:
df = df.drop(df[df.score < 50].index)
 
df.drop(df[df.score < 50].index, inplace=True)
 
# 多条件情况
# 可以使用操作符: | 只需其中一个成立, & 同时成立, ~ 表示取反,它们要用括号括起来。
# 例如删除列“score<50 和>20的所有行
df = df.drop(df[(df.score < 50) & (df.score > 20)].index)

参考文献:

【1】pandas 根据列的值选取所有行

【2】pandas小技巧之--值替换

【3】[译]如何根据条件从pandas DataFrame中删除不需要的行? - everfight - 博客园

【4】官网

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

Python 相关文章推荐
Python内置的字符串处理函数整理
Jan 29 Python
Python def函数的定义、使用及参数传递实现代码
Aug 10 Python
简单的Python的curses库使用教程
Apr 11 Python
Python实现FTP上传文件或文件夹实例(递归)
Jan 16 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
Python Multiprocessing多进程 使用tqdm显示进度条的实现
Aug 13 Python
Python根据服务获取端口号的方法
Sep 25 Python
python是否适合网页编程详解
Oct 04 Python
使用matlab或python将txt文件转为excel表格
Nov 01 Python
sklearn+python:线性回归案例
Feb 24 Python
Python图像处理库PIL的ImageEnhance模块使用介绍
Feb 26 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 Python
pytorch 如何使用amp进行混合精度训练
只需要这一行代码就能让python计算速度提高十倍
pytorch 如何使用float64训练
pytorch 使用半精度模型部署的操作
May 24 #Python
解决Pytorch半精度浮点型网络训练的问题
May 24 #Python
Python办公自动化之Excel(中)
May 24 #Python
PyTorch梯度裁剪避免训练loss nan的操作
May 24 #Python
You might like
生成缩略图
2006/10/09 PHP
一个MYSQL操作类
2006/11/16 PHP
php include的妙用,实现路径加密
2008/07/29 PHP
php xml-rpc远程调用
2008/12/19 PHP
PHP实现获取图片颜色值的方法
2014/07/11 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
2017/09/16 PHP
php用wangeditor3实现图片上传功能
2019/08/22 PHP
js可突破windows弹退效果代码
2008/08/09 Javascript
学习ExtJS(一) 之基础前提
2009/10/07 Javascript
jQuery.holdReady()方法用法实例
2014/12/27 Javascript
javascript+canvas实现刮刮卡抽奖效果
2015/07/29 Javascript
JCrop+ajaxUpload 图像切割上传的实例代码
2016/07/20 Javascript
js前端实现图片懒加载(lazyload)的两种方式
2017/04/24 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
总结4个方面优化Vue项目
2019/02/11 Javascript
vue滚动tab跟随切换效果
2020/06/29 Javascript
jquery实现淡入淡出轮播图效果
2020/12/13 jQuery
linux系统使用python监测网络接口获取网络的输入输出
2014/01/15 Python
python实现用于测试网站访问速率的方法
2015/05/26 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
windows下添加Python环境变量的方法汇总
2018/05/14 Python
基于tensorflow加载部分层的方法
2018/07/26 Python
详解python3中的真值测试
2018/08/13 Python
在python 中split()使用多符号分割的例子
2019/07/15 Python
Python实现时间序列可视化的方法
2019/08/06 Python
为什么说python适合写爬虫
2020/06/11 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
2020/06/30 Python
目前不被任何主流浏览器支持的CSS3属性汇总
2014/07/21 HTML / CSS
美国领先的家庭智能音响系统品牌:Sonos
2018/07/20 全球购物
优秀应届生推荐信
2013/11/09 职场文书
环境科学毕业生自荐信
2013/11/21 职场文书
绩效工资分配方案
2014/01/18 职场文书
信息技术培训感言
2014/03/06 职场文书
农村葬礼主持词
2014/03/31 职场文书
企业法人授权委托书范本
2014/09/23 职场文书
应届生求职自荐信范文
2015/03/04 职场文书