基于DataFrame筛选数据与loc的用法详解


Posted in Python onMay 18, 2018

DataFrame筛选数据与loc用法

python中pandas下的DataFrame是一个很不错的数据结构,附带了许多操作、运算、统计等功能。

如何从一个DataFrame中筛选中出一个元素呢。

以tushare返回的交易日信息为例。

df = ts.trade_cal()

数据如下:

calendarDate isOpen
0  1990/12/19  1
1  1990/12/20  1
2  1990/12/21  1
3  1990/12/22  0
4  1990/12/23  0
5  1990/12/24  1
6  1990/12/25  1
7  1990/12/26  1
8  1990/12/27  1
9  1990/12/28  1
10  1990/12/29  0
11  1990/12/30  0
12  1990/12/31  1
13  1991/1/1  0
14  1991/1/2  1
15  1991/1/3  1
16  1991/1/4  1
17  1991/1/5  0
18  1991/1/6  0
19  1991/1/7  1
20  1991/1/8  1
21  1991/1/9  1
22  1991/1/10  1
23  1991/1/11  1
24  1991/1/12  0
25  1991/1/13  0
26  1991/1/14  1
27  1991/1/15  1
28  1991/1/16  1
29  1991/1/17  1
...   ...  ...
9845 2017/12/02  0
9846 2017/12/03  0
9847 2017/12/04  1
9848 2017/12/05  1
9849 2017/12/06  1
9850 2017/12/07  1
9851 2017/12/08  1
9852 2017/12/09  0
9853 2017/12/10  0
9854 2017/12/11  1
9855 2017/12/12  1
9856 2017/12/13  1
9857 2017/12/14  1
9858 2017/12/15  1
9859 2017/12/16  0
9860 2017/12/17  0
9861 2017/12/18  1
9862 2017/12/19  1
9863 2017/12/20  1
9864 2017/12/21  1
9865 2017/12/22  1
9866 2017/12/23  0
9867 2017/12/24  0
9868 2017/12/25  1
9869 2017/12/26  1
9870 2017/12/27  1
9871 2017/12/28  1
9872 2017/12/29  1
9873 2017/12/30  0
9874 2017/12/31  0

如何取出某个日期的信息呢。例如年底了,想知道除夕前最后一个交易日是哪天。此处使用筛选功能。

df[df.calendarDate=="2017/12/31"]

输出如下:

>>> df[df.calendarDate=="2017/12/31"]
  calendarDate isOpen
9874 2017/12/31  0
>>> df[df.icol(0)=="2017/12/11"]
__main__:1: FutureWarning: icol(i) is deprecated. Please use .iloc[:,i]
  calendarDate isOpen
9854 2017/12/11  1

注意一定要写上双等号一定要写上双等号一定要写上双等号。重要的事情说3遍。。。

因为如果是单等号,会报语法异常的。。。

loc函数

关于loc这个坑爹的函数的用法,咋说呢,不要被他的”纯以标签名来进行索引”迷惑了。因为如果你给Loc中的第一个参数一个str的话,极有可能返回的是一个异常,说不在index中。 。。。。

坑爹。。。。

这个loc的用法不是根据某个位置内容筛选的含义,仍然是对行、对列的一种筛选。比如你某行的索引自己设置标签啥的。。很让人一头雾水的设计。跟ix就是重复的。。。。

大多数情况下的应用场景就是还是用数字取行,用str取列。

比如loc[0:3,[“a”,”b”]]。取0到第3行(左闭右开,非整型值时左闭右闭。。。),”a”列与”b”列。

以上这篇基于DataFrame筛选数据与loc的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现多线程抓取网页功能实例详解
Jun 08 Python
python实现傅里叶级数展开的实现
Jul 21 Python
Python实现多级目录压缩与解压文件的方法
Sep 01 Python
Python基本socket通信控制操作示例
Jan 30 Python
linux中如何使用python3获取ip地址
Jul 15 Python
Django 开发调试工具 Django-debug-toolbar使用详解
Jul 23 Python
Django结合ajax进行页面实时更新的例子
Aug 12 Python
阿里云ECS服务器部署django的方法
Aug 29 Python
如何使用python3获取当前路径及os.path.dirname的使用
Dec 13 Python
如何实现更换Jupyter Notebook内核Python版本
May 18 Python
Python中读取文件名中的数字的实例详解
Dec 25 Python
python实现图片九宫格分割的示例
Apr 25 Python
pandas DataFrame 根据多列的值做判断,生成新的列值实例
May 18 #Python
pandas.loc 选取指定列进行操作的实例
May 18 #Python
解决Pycharm中import时无法识别自己写的程序方法
May 18 #Python
解决pycharm无法调用pip安装的包问题
May 18 #Python
解决已经安装requests,却依然提示No module named requests问题
May 18 #Python
Python实现获取nginx服务器ip及流量统计信息功能示例
May 18 #Python
解决Pycharm无法import自己安装的第三方module问题
May 18 #Python
You might like
PHP基础学习小结
2011/04/17 PHP
php生成略缩图代码
2012/07/16 PHP
PHP flush()与ob_flush()的区别详解
2013/06/03 PHP
PHP的反射类ReflectionClass、ReflectionMethod使用实例
2014/08/05 PHP
PHP中static关键字以及与self关键字的区别
2015/07/01 PHP
php如何把表单内容提交到数据库
2019/07/08 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
JavaScript 动态改变图片大小
2009/06/11 Javascript
探寻Javascript执行效率问题
2014/11/12 Javascript
js判断一个字符串是否包含一个子串的方法
2015/01/26 Javascript
javascript实现列表切换效果
2016/05/02 Javascript
js基本算法:冒泡排序,二分查找的简单实例
2016/10/08 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
2016/10/24 Javascript
vue 实现在函数中触发路由跳转的示例
2018/09/01 Javascript
webpack3里使用uglifyjs压缩js时打包报错的解决
2018/12/13 Javascript
python基于xmlrpc实现二进制文件传输的方法
2015/06/02 Python
Python六大开源框架对比
2015/10/19 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
2017/12/25 Python
Python读取本地文件并解析网页元素的方法
2018/05/21 Python
Python封装原理与实现方法详解
2018/08/28 Python
华为校园招聘上机笔试题 扑克牌大小(python)
2020/04/22 Python
python导包的几种方法(自定义包的生成以及导入详解)
2019/07/15 Python
python scipy卷积运算的实现方法
2019/09/16 Python
Window版下在Jupyter中编写TensorFlow的环境搭建
2020/04/10 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
领先的钻石和订婚戒指零售商:Diamonds-USA
2016/12/11 全球购物
在线吉他课程,学习如何弹吉他:Fender Play
2019/02/28 全球购物
创业计划书的主要内容有哪些
2014/01/29 职场文书
卖车协议书
2014/04/21 职场文书
建筑横幅标语
2014/10/09 职场文书
2015年销售助理工作总结
2015/05/11 职场文书
办公室年度工作总结2015
2015/05/21 职场文书
2016教师国培研修感言
2015/12/08 职场文书
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL
用JS创建一个录屏功能
2021/11/11 Javascript
GTX1650super好不好 gtx1650super显卡属于什么级别
2022/04/08 数码科技