基于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列表生成器的循环技巧分享
Mar 06 Python
对于Python装饰器使用的一些建议
Jun 03 Python
Python编程实现删除VC临时文件及Debug目录的方法
Mar 22 Python
python 调用win32pai 操作cmd的方法
May 28 Python
Python入门之三角函数atan2()函数详解
Nov 08 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
Jan 10 Python
Python自定义线程类简单示例
Mar 23 Python
局域网内python socket实现windows与linux间的消息传送
Apr 19 Python
python 爬取古诗文存入mysql数据库的方法
Jan 08 Python
AUC计算方法与Python实现代码
Feb 28 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
Apr 22 Python
梳理总结Python开发中需要摒弃的18个坏习惯
Jan 22 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
咖啡知识 咖啡养豆要养多久 排气又是什么
2021/03/06 新手入门
php解压文件代码实现php在线解压
2014/02/13 PHP
PHP CURL 多线程操作代码实例
2015/05/13 PHP
php通过两层过滤获取留言内容的方法
2016/07/11 PHP
PHP面向对象程序设计之类与反射API详解
2016/12/02 PHP
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
利用Keydown事件阻止用户输入实现代码
2014/03/11 Javascript
js动态往表格的td中添加图片并注册事件
2014/06/12 Javascript
JS中Location使用详解
2015/05/12 Javascript
javascript用函数实现对象的方法
2015/05/14 Javascript
webpack dll打包重复问题优化的解决
2018/10/10 Javascript
jQuery实现全选、反选和不选功能的方法详解
2019/12/04 jQuery
jQuery+ThinkPHP实现图片上传
2020/07/23 jQuery
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
js调用网络摄像头的方法
2020/12/05 Javascript
python机器学习之随机森林(七)
2018/03/26 Python
Django框架模板的使用方法示例
2019/05/25 Python
python3.6环境安装+pip环境配置教程图文详解
2019/06/20 Python
Python进阶:生成器 懒人版本的迭代器详解
2019/06/29 Python
使用 Supervisor 监控 Python3 进程方式
2019/12/05 Python
selenium 多窗口切换的实现(windows)
2020/01/18 Python
浅谈python元素如何去重,去重后如何保持原来元素的顺序不变
2020/02/28 Python
Python参数传递及收集机制原理解析
2020/06/05 Python
浅谈numpy中函数resize与reshape,ravel与flatten的区别
2020/06/18 Python
初三政治教学反思
2014/01/30 职场文书
建筑安全员岗位职责
2014/03/13 职场文书
会计求职自荐信
2014/06/20 职场文书
2014党员整改措施思想汇报
2014/10/07 职场文书
党的群众路线教育实践活动查摆问题自查报告
2014/10/10 职场文书
2014年语文教师工作总结
2014/12/18 职场文书
行政人事专员岗位职责
2015/04/07 职场文书
2015年计生协会工作总结
2015/04/24 职场文书
Python实现归一化算法详情
2022/03/18 Python
Vue中使用import进行路由懒加载的原理分析
2022/04/01 Vue.js
frg-100简单操作(设置)说明
2022/04/05 无线电
Tomcat安装使用及部署Web项目的3种方法汇总
2022/08/14 Servers