Numpy数组取值 切片[:,1:5], 掩码操作arr[arr>0], 花哨的索引 arr[0, [1,5]],Pandas的操作类似

Series数据选择方法

Series对象与一维Numpy数组 和标准的Python字典 在许多方面 都一样。

1)将Series看作字典



可以使用Python字典的表达式和方法来检查 键 和索引 值







Series 可以新增,可以扩展。



2)将Series看作一维数组

Series不仅有着和字典一样的接口,而且还具备和Numpy数组一样的数组 数据选择 包括 索引、掩码、花哨的索引等操作。



3)索引器:loc、iloc、ix



如果Series是显示整数索引,取值操作是显示索引,切片操作是隐式索引。

这样子就很容易混淆,索引Pandas提供了一些索引器(indexer)属性作为取值方法

loc 显示



iloc 隐式



ix 是loc 和 iloc的混合形式,在Series对象中,ix等价与Python列表的取值方式。

ix主要用于DataFrame.

Python代码设计原则之一是“显示优于隐式”。 代码更容易维护 可读性更高。

DataFrame 数据选择方法

DataFrame像 二维或结构化数组,又像一个共享索引的若干Series对象的字典。

1)将DataFrame看作字典



俩个Series分别构成DataFram的一列。可以通过列名进行字典形式的取值获取数据

data['key'] 建议使用这个。



data.key

可以使用字典形式 调整对象,增加一列。



2)将DataFrame看作二维数组

DataFrame看出是一个增强版的二维数组。用values属性查看数组数据



可以把许多对数组的操作用在DataFrame上

行列转置



获取一行数据。



获取一列数据,需要向DataFrame传递单个列索引



因此,进行数组形式的取值时, 需要使用索引器了。 隐式索引。 DataFrame的行列标签自动保留在结果中。



loc

ix 混合效果,新版本好像不支持了,被丢弃了。挺好。

Python数据科学手册-Pandas:数据取值与选择的更多相关文章

  1. Python数据科学手册-Pandas:向量化字符串操作、时间序列

    向量化字符串操作 Series 和 Index对象 的str属性. 可以正确的处理缺失值 方法列表 正则表达式. Method Description match() Call re.match() ...

  2. Python数据科学手册-Pandas:累计与分组

    简单累计功能 Series sum() 返回一个 统计值 DataFrame sum.默认对每列进行统计 设置axis参数,对每一行 进行统计 describe()可以计算每一列的若干常用统计值. 获 ...

  3. Python数据科学手册-Pandas:层级索引

    一维数据 和 二维数据 分别使用Series 和 DataFrame 对象存储. 多维数据:数据索引 超过一俩个 键. Pandas提供了Panel 和 Panel4D对象 解决三维数据和四维数据. ...

  4. Python数据科学手册-Pandas数据处理之简介

    Pandas是在Numpy基础上建立的新程序库,提供了一种高效的DataFrame数据结构 本质是带行标签 和 列标签.支持相同类型数据和缺失值的 多维数组 增强版的Numpy结构化数组 行和列不在只 ...

  5. Python数据科学手册-Pandas:数值运算方法

    Numpy 的基本能力之一是快速对每个元素进行运算 Pandas 继承了Numpy的功能,也实现了一些高效技巧. 对于1元运算,(函数,三角函数)保留索引和列标签 对于2元运算,(加法,乘法),Pan ...

  6. Python数据科学手册-Pandas:合并数据集

    将不同的数据源进行合并 , 类似数据库 join merge . 工具函数 concat / append pd.concat() 简易合并 合并高维数据 默认按行合并. axis=0 ,试试 axi ...

  7. 100天搞定机器学习|day45-53 推荐一本豆瓣评分9.3的书:《Python数据科学手册》

    <Python数据科学手册>共五章,每章介绍一到两个Python数据科学中的重点工具包.首先从IPython和Jupyter开始,它们提供了数据科学家需要的计算环境:第2章讲解能提供nda ...

  8. Matplotlib 使用 - 《Python 数据科学手册》学习笔记

    一.引入 import matplotlib as mpl import matplotlib.pyplot as plt 二.配置 1.画图接口 Matplotlib 有两种画图接口: (1)一个是 ...

  9. 《Python数据科学手册》第五章机器学习的笔记

    目录 <Python数据科学手册>第五章机器学习的笔记 0. 写在前面 1. 判定系数 2. 朴素贝叶斯 3. 自举重采样方法 4. 白化 5. 机器学习章节总结 <Python数据 ...

随机推荐

  1. Maven配置【详细】

    参考网址:https://www.jianshu.com/p/f2f52a062d5b

  2. 【FAQ】华为帐号服务报错 907135701的常见原因总结和解决方法

    很多开发者在接入华为帐号服务时,经常会出现907135701的报错.根据官网文档说明,错误码907135701表示: 这个错误码在安卓和鸿蒙上都会出现,导致该报错的原因有很多,开发者可以按照下面几点进 ...

  3. 一个月后,我们又从 MySQL 双主切换成了主 - 从!

    这是悟空的第 157 篇原创文章 官网:www.passjava.cn 你好,我是悟空. 一.遇到的坑 一个月前,我们在测试环境部署了一套 MySQL 高可用架构,也就是 MySQL 双主 + Kee ...

  4. 零基础学Java(7)大数

    大数 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中两个很有用的类:BigInteger和BigDecimal.这两个类可以处理包含任意长度数字序列的数值.BigInte ...

  5. SpringCloudAlibaba分布式事务解决方案Seata实战与源码分析-中

    事务模式 概述 在当前的技术发展阶段,不存一个分布式事务处理机制可以完美满足所有场景的需求.一致性.可靠性.易用性.性能等诸多方面的系统设计约束,需要用不同的事务处理机制去满足. 目前使用的流行度情况 ...

  6. 从工程师到技术leader思维升级

    身处职场之中,太多话题相围绕,"个人成长"."管理"或许是讨论的最多的了. 但"个人成长"和"管理"却是大不相同的两件事 ...

  7. NOI / 2.1基本算法之枚举2673:比赛排名

    总时间限制: 1000ms 内存限制: 65536kB 描述 5名运动员参加100米赛跑,各自对比赛结果进行了预测: A说:E是第1名. B说:我是第2名. C说:A肯定垫底. D说:C肯定拿不了第1 ...

  8. 向docker镜像中传递变量的两种方式

    测试用到的python文件: #!/usr/bin/env python3 #conding: utf-8 from http.server import HTTPServer, BaseHTTPRe ...

  9. Thread类的常用方法_sleep和创建多线程程序的第二种方式实现Runnable接口

    public static void sleep(long millis);//使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行). 毫秒数结束后线程继续执行 package com.yang.T ...

  10. [NCTF2019]Fake XML cookbook-1|XXE漏洞|XXE信息介绍

    1.打开之后显示如图所示: 2.根据题目名字就能看出来和xml有关,和xml有关的那就是注入,brup抓包看下数据包,结果如下: 3.查看post数据,确实很像xml实体注入,那就进行尝试以下,将po ...