基于DataFrame筛选数据与loc的用法详解
作者:WarmSword 时间:2021-09-13 04:37:32
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”列。
来源:https://blog.csdn.net/junbujianwpl/article/details/70473659
标签:dataframe,loc,筛选
0
投稿
猜你喜欢
python正则表达式re.group()用法
2021-08-17 03:31:03
Sql Server "用户登录失败,错误编18456"的解决过程
2024-01-26 20:03:46
python中使用paramiko模块并实现远程连接服务器执行上传下载功能
2021-03-29 07:00:56
Python自动化测试Eclipse+Pydev 搭建开发环境
2022-07-15 07:01:54
PHP结合vue导出excel出现乱码的解决方法分享
2023-05-30 09:18:25
tensorflow转onnx的实现方法
2022-07-08 23:04:51
精细分析 SQL server服务器的内存配置
2009-01-19 13:56:00
Python实现嵌套列表及字典并按某一元素去重复功能示例
2023-02-22 10:44:05
python网络应用开发知识点浅析
2021-07-15 00:09:48
python xlwt如何设置单元格的自定义背景颜色
2022-07-25 10:41:05
python request 模块详细介绍
2021-02-12 22:15:33
Python单例模式实例详解
2021-06-26 03:06:17
windows下python 3.9 Numpy scipy和matlabplot的安装教程详解
2021-12-20 13:20:47
SQL语句练习实例之七 剔除不需要的记录行
2024-01-17 21:15:04
浅谈购物类网站如何保持视觉设计的一致性
2009-03-30 16:02:00
详解pytest分布式执行插件 pytest-xdist 的高级用法
2022-11-04 21:41:51
Python运算符的应用超全面详细教程
2023-08-20 18:24:56
表单验证中时间起止判断的递归处理
2009-12-16 19:27:00
HTML与CSS在Flash中的应用
2008-01-23 19:13:00
Python实现四个经典小游戏合集
2021-08-16 12:17:35