首先定义panda

dates=pd.date_range('',periods=6)
# print(dates)
df=pd.DataFrame(np.arange(24).reshape(6,4),index=dates,columns=['a','b','c','d'])
print(df)
             a   b   c   d
2013-01-01 0 1 2 3
2013-01-02 4 5 6 7
2013-01-03 8 9 10 11
2013-01-04 12 13 14 15
2013-01-05 16 17 18 19
2013-01-06 20 21 22 23

一、选择特定的某一列

# 选择某一列 选列比较简单
print("选择具体的某一列")
print(df['a'])
#print(df.a)#这两种表达方式一致

结果:

选择具体的某一列
2013-01-01 0
2013-01-02 4
2013-01-03 8
2013-01-04 12
2013-01-05 16
2013-01-06 20

二、选择特定的几行

2.1通过仿照array的形式来选择

print("选择特定的几行 0~1")
print(df[0:1])
print("选择20130102 到 20130104 行")
print(df['':''])

结果:

选择特定的几行 0~1
a b c d
2013-01-01 0 1 2 3
选择20130102 到 20130104 行
a b c d
2013-01-02 4 5 6 7
2013-01-03 8 9 10 11
2013-01-04 12 13 14 15

2.2按照标签来选择(其实应该说是按照index来选择) 不管是行还是列 都必须是lable

# 按标签来选择
print("按照特定的标签进行")
print(df.loc[''])#loc是根据index来选择对应的行 也就是a行还是b行
# 把ab的数据全部弄出来
print("特定列给选出来")
print(df.loc[:,['a','b']])
print("把某一行的特定列给选出来")
print(df.loc['',['a','b']])

结果:

按照特定的标签进行筛选
a 4
b 5
c 6
d 7
Name: 2013-01-02 00:00:00, dtype: int32
特定列给选出来
a b
2013-01-01 0 1
2013-01-02 4 5
2013-01-03 8 9
2013-01-04 12 13
2013-01-05 16 17
2013-01-06 20 21
把某一行的特定列给选出来
a 4
b 5
Name: 2013-01-02 00:00:00, dtype: int32

2.3按第几行(第几列)来进行选择     不管行列都是数字

# 按第几行来选择
print(df.iloc[3])#第三行的数据 iloc是根据数字 也就是第几行来决定索引
print(df.iloc[3:5,1:3])#三到5行 1:3 列

结果:

a    12
b 13
c 14
d 15
Name: 2013-01-04 00:00:00, dtype: int32
b c
2013-01-04 13 14
2013-01-05 17 18

2.4把lable和数字一起结合起来    就是又可以用数字 又可以用lable

# 把lable和第几位一起来筛选
print(df.ix[0:3,['a','c']])
print(df.ix['':'',['a','c']])

结果:

            a   c
2013-01-01 0 2
2013-01-02 4 6
2013-01-03 8 10
a c
2013-01-01 0 2
2013-01-02 4 6
2013-01-03 8 10
2013-01-04 12 14
2013-01-05 16 18

三、是或者否的相关筛选

# 是或者否的筛选  只对比a 然后把其它的给显示出来
# print(df)
# a这一列中大于8的 然后把其它的bcd也会显示出来
print(df[df.a>6])

结果

             a   b   c   d
2013-01-03 8 9 10 11
2013-01-04 12 13 14 15
2013-01-05 16 17 18 19
2013-01-06 20 21 22 23

Panda的学习之路(2)——pandas选择数据的更多相关文章

  1. 【转】Pandas学习笔记(二)选择数据

    Pandas学习笔记系列: Pandas学习笔记(一)基本介绍 Pandas学习笔记(二)选择数据 Pandas学习笔记(三)修改&添加值 Pandas学习笔记(四)处理丢失值 Pandas学 ...

  2. pandas选择数据-【老鱼学pandas】

    选择列 根据列名来选择某列的数据 import pandas as pd import numpy as np dates = pd.date_range("2017-01-08" ...

  3. Panda的学习之路(3)——pandas 设置特定的值&处理没有数据的部分

    先设定好我们的dataframe: # pandas 设置特定的值 dates=pd.date_range(',periods=6) # print(dates) df=pd.DataFrame(np ...

  4. Panda的学习之路(1)——series 和 Dataframe

    一.Series panda最基本的对象 # pandas的基础s=pd.Series([1,3,6,np.nan,44,1])#建立个简单的基本对象 类似一个一位数组print("建立个简 ...

  5. Qt 学习之路:视图选择 (QItemSelectionModel)

    选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反色.在 Qt 中,选择也是使用了一种模型.在 model/view 架构中,这种选择模型提供了一种 ...

  6. Qt 学习之路 :可视化显示数据库数据

    前面我们用了两个章节介绍了 Qt 提供的两种操作数据库的方法.显然,使用QSqlQuery的方式更灵活,功能更强大,而使用QSqlTableModel则更简单,更方便与 model/view 结合使用 ...

  7. Qt学习之路(54): 自定义拖放数据对象

    前面的例子都是使用的系统提供的拖放对象 QMimeData 进行拖放数据的存储,比如使用 QMimeData::setText() 创建文本,使用 QMimeData::urls() 创建 URL 对 ...

  8. Pandas选择数据

    1.简单筛选 >>> dates = pd.date_range(', periods=6) >>> df = pd.DataFrame(np.arange(24) ...

  9. .Net程序员安卓学习之路3:Post数据给网络API

    本例我们实现一次真正的网络交互,将数据POST到API,然后接收服务器的返回值进行处理,同时引入自定义类型和传说中阿里的FastJson. 实现思路如: 1. 在API端接收客户POST的数据还原成对 ...

随机推荐

  1. IntelliJ IDEA实用插件推荐

    IntelliJ在业界被公认为优秀的Java开发平台之一,在智能代码助手.代码自动提示.重构.J2EE支持.代码审查. 创新的GUI设计等方面表现突出,并支持基于Android平台的程序开发.通过插件 ...

  2. 《深入理解java虚拟机》读书笔记二——第三章

    第三章 垃圾收集器与内存分配策略 1.判断对象是否已死 引用计数法: 给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,每当引用失效时,计数器值就减1. 任何时刻计数器为0的对象就是不 ...

  3. Wannafly Camp 2020 Day 2I 堡堡的宝藏 - 费用流

    感谢这道题告诉我KM求的是 完备 最大权匹配 :( #include <bits/stdc++.h> using namespace std; #define reset(x) memse ...

  4. vscode设置成中文

    打开 VS Code Ctrl + Shift +p打开搜索框 搜索框内输入Configure Display Language 回车 修改代码中“locale”后面引号内内容为zh-CH 重新启动V ...

  5. linux - mysql - 卸载:使用rpm方式安装的mysql

    一.查看系统中是否以rpm包安装的mysql rpm -qa | grep -i mysql 结果: 备注:如果有内容则证明是使用rpm方式安装的mysql 二.卸载 使用rpm -e 命令将上个命令 ...

  6. SMTS Silicon Design Engineer Location: Beijing, Beijing, CN

    https://jobs.amd.com/job/Beijing-Physical-Design-Engineer-Beij/603603700/?locale=en_US What you do a ...

  7. set的使用

    集合是Python的一种数据类型,集合是一个可变容器.常用于列表的去重. 什么是集合 集合是一个可变容器 集合中的数据对象都是唯一的(不可重复) 集合是无序的存储结构 集合是可迭代对象 集合内的元素是 ...

  8. 1、安装gitlab

    1.安装Gitlab Gitlab分为社区版和企业版(收费),这里安装的是ce社区版本 方式一: Gitlab官方有提供好的rpm包仓库,所以采用yum安装即可. [root@localhost ~] ...

  9. 并查集路径分裂优化 UnionFind PathSpliting(C++)

    /* * UnionFind.h * 有两种实现方式,QuickFind和QuickUnion * QuickFind: * 查找O(1) * 合并O(n) * QuickUnion:(建议使用) * ...

  10. CentOS7利用docker安装MySQL5.7

    CentOS7利用docker安装MySQL5.7 前提条件 centos7 且内核版本高于3.10, 可通过以下命令查看内核版本 uname -r 利用yum 安装docker 安装一些必要的系统工 ...