pandas系列之DataFrame 行列数据筛选实例


Posted in Python onApril 12, 2018

一、对DataFrame的认知

DataFrame的本质是行(index)列(column)索引+多列数据。

为了简化理解,我们不妨换个思路…

现实中,为了简化对一件事物的描述,我们会选择几个特征。

例如,从(性别、身高、学历、职业、爱好..)等角度去刻画一个人,这些“角度”即为“特征”。

pandas系列之DataFrame 行列数据筛选实例

其中,不同的行表示不同的记录;列代表特征,不同记录因各个特征之间的差异而不同。

DataFrame默认索引是序号(0,1,2…),可以理解成位置索引。一般我们用id标识不同记录,不会改变index。但为了理解不同特征(列)含义,我们往往会重新指定column。

一些简易但不算严谨的理解是:

行列

行 ? index ? 记录 (一般沿用默认索引)

列 ? column ? 特征 (自定义索引)

索引

默认索引 ? 序号 ? 位置 ? 方便索引但理解不易

自定义索引 ? 特征名称 ? 属性 ? 便于理解

二、对dataframe进行行列数据筛选

import pandas as pd,numpy as np
from pandas import DataFrame
df = DataFrame(np.arange(20).reshape((4,5)),column = list('abcde'))

pandas系列之DataFrame 行列数据筛选实例

1.df[]&df. 选取列数据

df.a 
df[[‘a','b']]

2.df.loc[[index],[colunm]] 通过标签选择数据

不对行进行筛选时,[index]处填 : (不能为空),即df.loc[:,'a']表示选取a列全部数据。

df.loc[0,'a'] 
df.loc[0:1,[‘a','b']] 
df.loc[[0,2],[‘a','c']]

pandas系列之DataFrame 行列数据筛选实例

3.df.iloc[[index],[colunm]] 通过位置选择数据

不对行进行筛选时,同df.loc[],即[index]处不能为空。

df.iloc[0,0] 
df.iloc[0:1,1:3] 
df.iloc[[0,2],[1,3]]

pandas系列之DataFrame 行列数据筛选实例

4.df.ix[[index],[column]] 通过标签or位置选择数据

df.ix[]混合了标签和位置选择。需要注意的是,[index]和[column]的框内需要指定同一类的选择。
df.ix[[0:1],[‘a',3]]报错

以上这篇pandas系列之DataFrame 行列数据筛选实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现备份文件实例
Sep 16 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
Oct 09 Python
Python元组操作实例分析【创建、赋值、更新、删除等】
Jul 24 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
Oct 11 Python
python如何重载模块实例解析
Jan 25 Python
Python下简易的单例模式详解
Apr 08 Python
利用anaconda保证64位和32位的python共存
Mar 09 Python
用Python获取摄像头并实时控制人脸的实现示例
Jul 11 Python
Python Collatz序列实现过程解析
Oct 12 Python
python生成器用法实例详解
Nov 22 Python
python os模块常用的29种方法使用详解
Jun 02 Python
利用python绘制中国地图(含省界、河流等)
Sep 21 Python
python:pandas合并csv文件的方法(图书数据集成)
Apr 12 #Python
用pandas按列合并两个文件的实例
Apr 12 #Python
Python中多个数组行合并及列合并的方法总结
Apr 12 #Python
Python实现的凯撒密码算法示例
Apr 12 #Python
python merge、concat合并数据集的实例讲解
Apr 12 #Python
Python实现的维尼吉亚密码算法示例
Apr 12 #Python
python pandas dataframe 按列或者按行合并的方法
Apr 12 #Python
You might like
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
2010/05/04 PHP
PHP设计模式之委托模式定义与用法简单示例
2018/08/13 PHP
jquery ready函数源代码研究
2009/12/06 Javascript
zeroclipboard复制到剪切板的flash
2010/08/04 Javascript
Uglifyjs(JS代码优化工具)入门 安装使用
2020/04/13 Javascript
JavaScript实现快速排序(自已编写)
2012/12/19 Javascript
浅析return false的正确使用
2013/11/04 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
2014/06/26 Javascript
JavaScript遍历table表格中的某行某列并打印其值
2014/07/08 Javascript
jquery单选框radio绑定click事件实现方法
2015/01/14 Javascript
JavaScript实现SHA-1加密算法的方法
2015/03/11 Javascript
JavaScript数组前面插入元素的方法
2015/04/06 Javascript
JavaScript DOM操作表格及样式
2015/04/13 Javascript
JavaScript在网页中画圆的函数arc使用方法
2015/11/13 Javascript
跟我学习javascript的Date对象
2015/11/19 Javascript
jQuery获取this当前对象子元素对象的方法
2016/11/29 Javascript
AngularJS Controller作用域
2017/01/09 Javascript
JS 实现 ajax 异步浏览器兼容问题
2017/01/21 Javascript
JavaScript方法_动力节点Java学院整理
2017/06/28 Javascript
用vue-cli开发vue时的代理设置方法
2018/09/20 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
js判断密码强度的方法
2020/03/18 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
Bootstrap FileInput实现图片上传功能
2021/01/28 Javascript
[00:37]DOTA2上海特级锦标赛 OG战队宣传片
2016/03/03 DOTA
Python中的默认参数详解
2015/06/24 Python
基于DataFrame改变列类型的方法
2018/07/25 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
在python里从协程返回一个值的示例
2019/02/19 Python
python七夕浪漫表白源码
2019/04/05 Python
通俗易懂了解Python装饰器原理
2020/09/17 Python
同程旅游英文网站:LY.com
2018/11/13 全球购物
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
校园演讲稿汇总
2014/05/21 职场文书
评先进个人材料
2014/12/29 职场文书
关于Vue中的options选项
2022/03/22 Vue.js