首先定义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. P1402 酒店之王【网络流】【最大流】

    P1402 酒店之王 提交 5.39k 通过 2.16k 时间限制 1.00s 内存限制 125.00MB 题目提供者yeszy 难度省选/NOI- 历史分数100 提交记录 查看题解 标签 福建省历 ...

  2. SVM-支持向量机(二)非线性SVM分类

    非线性SVM分类 尽管SVM分类器非常高效,并且在很多场景下都非常实用.但是很多数据集并不是可以线性可分的.一个处理非线性数据集的方法是增加更多的特征,例如多项式特征.在某些情况下,这样可以让数据集变 ...

  3. vue.js中使用离线检测

    Html5在window.navigator对象上添加了一个属性onLine 返回布尔值 true表示在线.同时新增了两个事件: window.addEventListener('online', f ...

  4. [CF1304C] Air Conditioner

    维护一区间 \([l,r]\) 人按照时间升序 考虑 \((l_i, h_i, t_i)\),当前的所有区间与这个区间取交 推到 \(t_{i+1}\) 时,所有区间的端点向两边扩张即可 注意把空掉的 ...

  5. JQuery函数 $.ajax()

    ajax() 方法通过 HTTP 请求加载远程数据 该方法是 jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XMLHttpR ...

  6. Linux系统初学者的常见问题解决集结大全

    http://www.embeddedlinux.org.cn/html/xinshourumen/200809/22-86.html 一. 如何建立多用户 提醒大家一句,别一直使用root用户,因为 ...

  7. 关于setTimeout的妙用

    定义 在指定的延迟时间之后调用一个函数或执行一个代码片段 这个是setTimeout最主要的功能,但也是很坑的地方,首先javascript其实是运行在单线程的环境下,意味者定时器会在未来的某个时间支 ...

  8. 线段树的树状数组大小为什么是4*maxn

    以下方建树代码为例,r数组表述原始数据,t表述tree也就是树状数组 void make(int left,int right,int num)//创建线段树 { t[num].l=left; t[n ...

  9. 分类问题(一)MINST数据集与二元分类器

    分类问题 在机器学习中,主要有两大类问题,分别是分类和回归.下面我们先主讲分类问题. MINST 这里我们会用MINST数据集,也就是众所周知的手写数字集,机器学习中的 Hello World.sk- ...

  10. 素问 - 使用 PE、PB 做估值

    摘自<小韭的学习圈> Q 哪些行业用PE看合适,哪些用PB看合适啊?其中的大致逻辑是什么? A PE = 股价 / 每股收益 使用PE的逻辑是,我们认为一个股票有价值,是因为公司未来能赚钱 ...