索引、选取和过滤

大部分的查询用法
类型 说明
obj[val] 选取DataFrame的单个列或一组列
obj.ix[val] 选取DataFrame的单个行或一组行
obj.ix[:,val] 选取单个列或列子集
obj.ix[val1,val2] 同时选取行和列
reindex方法 将一个或多个轴匹配到新索引
xs方法 根据标签选取单行或单列,并返回一个Series
icol、irow方法 根据整数位置选取单列或单行,并返回Series
get_value、set_value方法 根据行标签和列标签选取单个值
示例
  • Series
obj = Series(np.arange(4.),index=['a','b','c','d'])
obj a 0.0
b 1.0
c 2.0
d 3.0
dtype: float64
Series索引查
obj[1]
1.0
obj[1:3]
b 1.0
c 2.0
dtype: float64
Series索引的标签查询,它和切片的区别,不只顾头还顾尾
obj['a':'c']

a    0.0
b 1.0
c 2.0
dtype: float64 obj['a':'c']=5
obj a 5.0
b 5.0
c 5.0
d 3.0
dtype: float64
  • DataFrame

操作列进行查询的方式

data = pd.DataFrame(np.arange(16).reshape(4,4),index=['a','b','c','d'],columns=['one','two','three','four'])
data one two three four
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
直接操作索引会报错,用索引查必须是切片,选取行
data[0:2]

one	two	three	four
a 0 0 0 0
b 0 5 6 7
可以用列索引的标签名字查询
data[['one','two','three']]

one	two	three
a 0 1 2
b 4 5 6
c 8 9 10
d 12 13 14

ix操作行进行查询,ix[行,列]

data.ix[['a','b'],['two','four']]

two	four
a 1 3
b 5 7
ix查询不只顾头也顾尾
data.ix[:'c',:'two']
one two
a 0 1
b 4 5
c 8 9
利用布尔值进行查询
# 行大于7,的前两列,这里边的切片查询依然是顾头不顾尾
data.ix[data.three>7,:2] one two
c 8 9
d 12 13

个人总结查询使用Series操作索引是直接行操作,如果使用DataFrame进行索引默认都是操作列,操作行需要使用ix

Pandas基本功能之选取索引和过滤的更多相关文章

  1. Pandas基本功能之层次化索引及层次化汇总

    层次化索引 层次化也就是在一个轴上拥有多个索引级别 Series的层次化索引 data=Series(np.random.randn(10),index=[ ['a','a','a','b','b', ...

  2. pandas小记:pandas高级功能

    http://blog.csdn.net/pipisorry/article/details/53486777 pandas高级功能:面板数据.字符串方法.分类.可视化. 面板数据 {pandas数据 ...

  3. pandas读书笔记、重新索引

      重新索引   pandas对象的一个重要方法是 reindex ,其作用是创建一个适应新索引的新对象. #reindex函数的参数 reindex(index,method,fill_value, ...

  4. 数据可视化基础专题(六):Pandas基础(五) 索引和数据选择器(查找)

    1.序言 如何切片,切块,以及通常获取和设置pandas对象的子集 2.索引的不同选择 对象选择已经有许多用户请求的添加,以支持更明确的基于位置的索引.Pandas现在支持三种类型的多轴索引. .lo ...

  5. Pandas基本功能详解

    Pandas基本功能详解 Pandas  Pandas基本功能详解 |轻松玩转Pandas(2) 参考:Pandas基本功能详解 |轻松玩转Pandas(2)

  6. Pandas基本功能之reindex重新索引

    重新索引 reindex重置索引,如果索引值不存在,就引入缺失值 参数介绍 参数 说明 index 用作索引的新序列 method 插值 fill_vlaue 引入缺失值时的替代NaN limit 最 ...

  7. pandas数组和numpy数组在使用索引数组过滤数组时的区别

    numpy array 过滤后的数组,索引值从 0 开始. pandas Series 过滤后的 Series ,保持原来的索引,原来索引是几,就是几. 什么意思呢,来看个栗子: import num ...

  8. Pandas常用功能总结

    1.读取.csv文件 df2 = pd.read_csv('beijingsale.csv', encoding='gb2312',index_col='id',sep='\t',header=Non ...

  9. pandas:由列层次化索引延伸的一些思考

    1. 删除列层次化索引 用pandas利用df.groupby.agg() 做聚合运算时遇到一个问题:产生了列方向上的两级索引,且需要删除一级索引.具体代码如下: # 每个uesr每天消费金额统计:和 ...

随机推荐

  1. 0基础学习MySQL 之常用数据类型

    原文地址 =========================================== 数据类型是定义列中可以存储什么数据以及该数据实际怎么存储的基本规则. Mysql的常用数据类型主要有: ...

  2. 插件:zTree

    JQuery zTree core v3.5.23 http://zTree.me/ Date: 2016-04-01 zTree 是利用 JQuery 的核心代码,实现一套能完成大部分常用功能的 T ...

  3. 《算法》第五章部分程序 part 8

    ▶ 书中第五章部分程序,包括在加上自己补充的代码,适用于基因序列的 2-Bit 压缩算法,行程长压缩算法,Huffman 压缩算法,LZW 压缩算法 ● 适用于基因序列的 2-Bit 压缩算法 pac ...

  4. c#调用带输出参数的存储过程

    sql server中编写一个存储过程: CREATE PROCEDURE ProGetPWD @username varchar(20), @password varchar(20) OUTPUT ...

  5. Appium -选择、操作元素

    选择界面元素 操作元素(点击.输入字符.拖拽.获取页面元素的各种属性) 根据Appium获取的数据进行分析和处理 desired_capabilities 查看appPackage 和appActiv ...

  6. react-navigation设置navigationOptions中Static中使用 this 的方法

    使用react-navigation时,单页面设置navigationOptions中,进行Static中 调用this 中的方法或值时,需要做如下操作 static navigationOption ...

  7. 深度学习原理与框架-卷积网络细节-图像分类与图像位置回归任务 1.模型加载 2.串接新的全连接层 3.使用SGD梯度对参数更新 4.模型结果测试 5.各个模型效果对比

    对于图像的目标检测任务:通常分为目标的类别检测和目标的位置检测 目标的类别检测使用的指标:准确率, 预测的结果是类别值,即cat 目标的位置检测使用的指标:欧式距离,预测的结果是(x, y, w, h ...

  8. Maven上传构建到私服

    通过Maven发布构建到NEXUS私服上发布构建到私服 --- mvn deployPOM中通过distributionManagement分发本地构建到NEXUS私服上第一步,配置distribut ...

  9. python 机器学习实践入门

    机器学习概念概念 机器 学习是计算机科学的一个分支,从模式识别.人工智能和计算学习理论发展而来,我们可以将其作为数据挖掘的工具 侧重用于数据分析方法理解给定的数据 目的是:开发能够从先前观测的数据,通 ...

  10. jsp不解析el表达式,不识别jstl标签,找不到http://java.sun.com/jsp/jstl/core

    问题描述: jsp页面中el表达式,例如:${pageContext.request.contextPath},原样呈现,未被解析. 解决方案: 为jsp页添加page指令如下: <%@ pag ...