Panda的学习之路(2)——pandas选择数据
首先定义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选择数据的更多相关文章
- 【转】Pandas学习笔记(二)选择数据
Pandas学习笔记系列: Pandas学习笔记(一)基本介绍 Pandas学习笔记(二)选择数据 Pandas学习笔记(三)修改&添加值 Pandas学习笔记(四)处理丢失值 Pandas学 ...
- pandas选择数据-【老鱼学pandas】
选择列 根据列名来选择某列的数据 import pandas as pd import numpy as np dates = pd.date_range("2017-01-08" ...
- Panda的学习之路(3)——pandas 设置特定的值&处理没有数据的部分
先设定好我们的dataframe: # pandas 设置特定的值 dates=pd.date_range(',periods=6) # print(dates) df=pd.DataFrame(np ...
- Panda的学习之路(1)——series 和 Dataframe
一.Series panda最基本的对象 # pandas的基础s=pd.Series([1,3,6,np.nan,44,1])#建立个简单的基本对象 类似一个一位数组print("建立个简 ...
- Qt 学习之路:视图选择 (QItemSelectionModel)
选择是视图中常用的一个操作.在列表.树或者表格中,通过鼠标点击可以选中某一项,被选中项会变成高亮或者反色.在 Qt 中,选择也是使用了一种模型.在 model/view 架构中,这种选择模型提供了一种 ...
- Qt 学习之路 :可视化显示数据库数据
前面我们用了两个章节介绍了 Qt 提供的两种操作数据库的方法.显然,使用QSqlQuery的方式更灵活,功能更强大,而使用QSqlTableModel则更简单,更方便与 model/view 结合使用 ...
- Qt学习之路(54): 自定义拖放数据对象
前面的例子都是使用的系统提供的拖放对象 QMimeData 进行拖放数据的存储,比如使用 QMimeData::setText() 创建文本,使用 QMimeData::urls() 创建 URL 对 ...
- Pandas选择数据
1.简单筛选 >>> dates = pd.date_range(', periods=6) >>> df = pd.DataFrame(np.arange(24) ...
- .Net程序员安卓学习之路3:Post数据给网络API
本例我们实现一次真正的网络交互,将数据POST到API,然后接收服务器的返回值进行处理,同时引入自定义类型和传说中阿里的FastJson. 实现思路如: 1. 在API端接收客户POST的数据还原成对 ...
随机推荐
- vue实现网页简单计算器实例代码
效果: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- IntelliJ IDEA 2019.3安装与激活(附注册码)
转载声明:本文是根据 https://segmentfault.com/a/1190000021220727?utm_source=tag-newest 并结合个人的安装完成情况进行了改动,从而生成此 ...
- Mapped Statements collection does not contain value for xxx
这是我第二次遇到的这个问题了,总结下. 第一次的问题是 mybatis的sqlSessionFactory的mapperLocations,配置的是这个路径下的所有映射文件,但是我没写的没有在该路径下 ...
- centos7重启Mysql命令
执行命令/etc/init.d/mysql restart重启Mysql服务器
- (转)HashMap和HashTable源码
转自: http://www.cnblogs.com/ITtangtang/p/3948406.html http://frankfan915.iteye.com/blog/1152091 一.Has ...
- AntDesign(React)学习-11 使用mobx
mobx 是由 Mendix.Coinbase.Facebook 开源和众多个人赞助商所赞助的. mobx和redux类似,也可以用来进行状态管理,并且更简单,更灵活.初次研究,先实现一个最简单的功能 ...
- zabbix4.4.2安装部署
1.下载阿里的源,执行 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 2 ...
- 关于EasyUI DataGrid行编辑时嵌入时间控件
本人做一个名为“安徽中控”项目时,为快速开发基础数据增删改模块,遂采用EasyUIDatagrid将所有增删改查的操作都集中于表格中,并且所有增删改查操作都集中于泛型对象,从而不必为每个表写具体的增删 ...
- AE开发常见问题总结
一. Arcgis10.0 组件初始化失败解决方法: ESRI.ArcGIS.RuntimeManager.BindLicense(ESRI.ArcGIS.ProductCode.EngineOrDe ...
- yii消息提示扩展
//安装 composer.phar require --prefer-dist yiister/yii2-gentelella "~1.0" //消息存入 Yii::$app-& ...