“戏精少女”的pandas学习之路,你该这么学!No.5
如果文章图片无法观看,请前往CSDN博客观看 https://blog.csdn.net/hihell
戏精博主即将上线
就在上一篇,梦想橡皮擦这位博主经过艰苦的努力
终于能创建一个dataframe了
开开心心,打开本
高高兴兴,合上本
学习,多么快乐的事情
不过就是找本书,然后把里面自己认识的单词
都标注上
在那一刻,学会了
或者假装学会了
其实过两天,发现自己啥都忘了
是不是,嘿嘿
昨天我们已经手撕了dataframe的创建与简单获取
今天,那必然是盯着属性学习
啊
其实吧
dataframe特别容易理解
就是一个一个的series排排好
大家一起用索引
吗!
你好好想想
想明白了
那对于dataframe就达到一个很高的境界了
剩下的都不是事
常见属性盘点
走过路过
这些属性要背过
第一个获取索引
看,上来就是这么简单的
你就这么一猜(说的好像真能猜出来一样@_@)
就知道是index
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.index)
>>> Index(['class1', 'class2', 'class3'], dtype='object')
接下来咱在获取一个columns和values吧
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.index)
print(df.columns)
print(df.values)
结果那么微微一秀
Index(['class1', 'class2', 'class3'], dtype='object')
Index(['boys', 'girls'], dtype='object')
[[1 5]
[2 6]
[3 7]]
毫无瑕疵,都猜对了
为什么能猜对,
因为我们这几天认真学习了
为什么认真学习
因为大佬博客写(bu)的(yao)好(lian)
还有2个属性特别常用
一个叫做size一个叫做shape
都是看dataframe结构的
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.size)
print(df.shape)
size得到的结果是6,表示总共有6个数据才dataframe里面
shape得到的结果是 (3, 2) 表示dataframe是一个3行2列的矩阵
看,就这么厉害,数学概念顺口就来
矩阵... ...
打开官网一看,咦,还有好多属性呢
不用慌,不用忙
你的时间非常值钱,先不用死磕
(其实很容易死磕迷糊了)
在学习几个简单的函数,就收工
你看,外面太阳正当头,正是学习的好时候啊
咱顺手就学几个简单的函数
第一个
head()
tail()
多么熟悉的画风
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.head(1))
print(df.tail(2))
试试吧,head获取头部,tai获取尾部,跟series一样的
到这时候,你是不是应该脑中一抖
是不是会出现loc
,iloc
这两个函数
如果闪过,那么恭喜你,你已经学会融会贯通了
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.loc['class1'])
print(df.iloc[1])
秀一波结果
boys 1
girls 5
Name: class1, dtype: int64
boys 2
girls 6
Name: class2, dtype: int64
接下来开始弄点不同的
总是和series一样
那就不需要弄个dataframe出来了
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.items())
print(df.keys())
print(df.iteritems())
print(df.iterrows())
print(df.itertuples())
学习前,那必然是先看运行结果
<generator object DataFrame.iteritems at 0x000001E37ED4EC50>
Index(['boys', 'girls'], dtype='object')
<generator object DataFrame.iteritems at 0x000001E37ED4EC50>
<generator object DataFrame.iterrows at 0x000001E37ED4EC50>
<map object at 0x000001E30C371400>
5个函数对应5个结果
注意到1和3好像一样唉~
不用猜了,他们两个就是一样的
都是返回 Iterator over (column name, Series) pairs.
咦,这句英文啥意思?
大白话,就是返回一个 元组迭代器
看看结果
体会啊,这个地方用心体会
第二个函数keys
返回的就是索引啦
第四个函数iterrows
返回的行,跟 iteritems 是对应的
第五个函数itertuples
把每行都当成一个元组返回
看一下吧
for item in df.itertuples():
print(item)
print(item[1])
结果为
Pandas(Index='class1', boys=1, girls=5)
1
Pandas(Index='class2', boys=2, girls=6)
2
Pandas(Index='class3', boys=3, girls=7)
3
恩,这5个函数还是有点意思的
使用的时候,一定要想好了在用
毕竟,一不留神,就用错了
好,简单的函数终于嘚啵完了
你呢,可以边看边练,
也可以只看不练
更可以不看只给我评论
对吧
又到了公布自己公众号的时刻了
总是那么的激动,总想一天自己的粉丝过万,成为称霸一方的大佬
你可以点击收藏,然后在电脑上,打开,掏出手机,然后一扫,就关注了
你可以截图保存,然后用手机一扫,关注了
你可以分享链接到weixiin 打开,长按,然后关注了
看,给你那么多的技巧,咋就关注不上了呢!
“戏精少女”的pandas学习之路,你该这么学!No.5的更多相关文章
- 学而精计算机公共基础学习之路TEST1
算法 一:算法基本概念 算法是个什么概念学了这么久的程序尽然没有听说过,其实算法就是为了解决问题那么怎么准确完整的解决这个问题就是算法.所以我们所写的程序就可以说为对算法的描述,但是程序编制是不能有于 ...
- 学而精计算机公共基础学习之路TEST2(程序设计基础)
程序设计基础 程序设计方法与风格 1.程序设计方法 程序设计: 指设计.编制.调试程序的方法和过程. 程序设计方法是研究问题求解如何进行系统构造的软件方法学.常用的程序设计方法有:结构化程序设计方法. ...
- pandas学习系列(一):时间序列
最近参加了天池的一个机场航空人流量预测大赛,需要用时间序列来预测,因此开始使用python的pandas库 发现pandas库功能的确很强大,因此在这记录我的pandas学习之路. # -*- cod ...
- zz 游戏程序员的学习之路(中文版)
游戏程序员的学习之路(中文版) Milo Yip · 1 天前 感谢 @楚天阔(tkchu)编写脚本及整理中文译本数据,自动从英文版生成中文版,SVG / PDF 版本中的书籍图片现在链接至豆瓣页面. ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- 小强的Hadoop学习之路
本人一直在做NET开发,接触这行有6年了吧.毕业也快四年了(6年是因为大学就开始在一家小公司做门户网站,哈哈哈),之前一直秉承着学要精,就一直一门心思的在做NET(也是懒吧).最近的工作一直都和大数据 ...
- pandas学习(数据分组与分组运算、离散化处理、数据合并)
pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...
- Java学习之路(转)
Java学习之路(书籍推荐) 一.基础类 1.<Thinking in java>(阅读2遍),入门第一位是建立正确的概念 2.<Core Java>这本书更贴近实践,更多 ...
- Qt 学习之路 2(1):序
https://www.devbean.net/category/qt-study-road-2/page/10 原来开过QT学习之路1, 很棒, 再翻阅时已经没有了. 所以这次把看过的记录下来 Ho ...
随机推荐
- python密钥登录主机
#!/usr/bin/python # -*- coding:utf-8 -*- ################################### # # 检查主机的损坏磁盘 # ####### ...
- 51nod 1301 集合异或和——异或dp
题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1301 好题!看了TJ才会. 因为是不可重集合,所以当然有前 i 个 ...
- Erlang pool management -- Emysql pool
从这篇开始,这一系列主要分析在开源社区中,Erlang 相关pool 的管理和使用. 在开源社区,Emysql 是Erlang 较为受欢迎的一个MySQL 驱动. Emysql 对pool 的管理和使 ...
- error: converting to execution character set: Invalid or incomplete multibyte or wide character
交叉编译.c文件,遇到如下问题 arm-linux-gcc -o show_lines show_lines.c -lfreetype -lm show_lines.c:199:19: error: ...
- Windows 2008 远程登陆时提示"要登录到此远程计算机,您必须被授予允许通过终端登录登录的权限"
ECS Win2008 远程时提示"要登录到此远程计算机,您必须被授予允许通过终端登录登录的权限"的解决方法 问题描述 ECS Windows 2008 远程登陆时提示&quo ...
- k8s组件简介
Kubernetes is constructed using several components, as follows:f Kubernetes masterf Kubernetes nodes ...
- Centos6.5安装JDK8教程(一)
[原] 转载请注明原文地址, 保持对知识基本尊重,谢谢! Win7宿主系统 VmWareWorkstation 11应用下的 Centos6.5系统. /******************* ...
- mouseenter与mouseover的区别
mouseover 事件:只有在鼠标指针穿过被选元素时,才会触发. mouseover 事件:鼠标指针穿过任何子元素,都会触发. 请看例子的演示.
- TCP/IP的3次握手和4次握手
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接,如图1所示. (1) 第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等 ...
- [matlab]一道笔试题
x=[1 1; 1 -1; -1 -1; -1 1]'; X=-2:0.01:2; Y=X; N=length(X); [X,Y]=meshgrid(X,Y); Z1=0;Z2=0;Z3=0;Z4=0 ...