首先定义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. webservice后台起调试

    https://blog.csdn.net/smile00_0/article/details/72763114

  2. Hive学习笔记二

    目录 Hive常见属性配置 将本地库文件导入Hive案例 Hive常用交互命令 Hive其他命令操作 参数配置方式 Hive常见属性配置 1.Hive数据仓库位置配置 1)Default数据仓库的最原 ...

  3. android 获取所有SD卡目录

    //返回sd卡路径public static List<String> getStorageDirectories(Context context) { StorageManager sm ...

  4. 风变编程笔记(二)-Python爬虫精进

    第0关  认识爬虫 1. 浏览器的工作原理首先,我们在浏览器输入网址(也可以叫URL),然后浏览器向服务器传达了我们想访问某个网页的需求,这个过程就叫做[请求]紧接着,服务器把你想要的网站数据发送给浏 ...

  5. Java自学-Lambda 概念

    Java Lambda 表达式概念 假设一个情景: 找出满足条件的Hero 从使用普通方法,匿名类,以及Lambda这几种方式,逐渐的引入Lambda的概念 步骤 1 : 普通方法 使用一个普通方法, ...

  6. app点击底部菜单切换标题

    <!DOCTYPE HTML><html><head> <meta charset="utf-8"> <meta name=& ...

  7. git&github 的使用

    git(/ɡɪt/[5], 音频(帮助·信息))是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)创作,于2005年以GPL发布.最初目的是为更好地管理Linux内核开发而 ...

  8. Java修饰符类型

    转自原文:http://www.yiibai.com/java/java_modifier_types.html 修饰符是添加到这些定义来改变它们的含义的关键词. Java语言有各种各样修饰词,其中包 ...

  9. python 数组格式转换

    格式转换 arr1 = [ {'name': 'jack', 'hobby': '西瓜'}, {'name': 'jack', 'hobby': '冬瓜'}, {'name': 'rose', 'ho ...

  10. 在docker上部署centos

    1.查找镜像源$ docker search centosNAME DESCRIPTION STARS OFFICIALcentos The official build of CentOS. 385 ...