如果文章图片无法观看,请前往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的更多相关文章

  1. 学而精计算机公共基础学习之路TEST1

    算法 一:算法基本概念 算法是个什么概念学了这么久的程序尽然没有听说过,其实算法就是为了解决问题那么怎么准确完整的解决这个问题就是算法.所以我们所写的程序就可以说为对算法的描述,但是程序编制是不能有于 ...

  2. 学而精计算机公共基础学习之路TEST2(程序设计基础)

    程序设计基础 程序设计方法与风格 1.程序设计方法 程序设计: 指设计.编制.调试程序的方法和过程. 程序设计方法是研究问题求解如何进行系统构造的软件方法学.常用的程序设计方法有:结构化程序设计方法. ...

  3. pandas学习系列(一):时间序列

    最近参加了天池的一个机场航空人流量预测大赛,需要用时间序列来预测,因此开始使用python的pandas库 发现pandas库功能的确很强大,因此在这记录我的pandas学习之路. # -*- cod ...

  4. zz 游戏程序员的学习之路(中文版)

    游戏程序员的学习之路(中文版) Milo Yip · 1 天前 感谢 @楚天阔(tkchu)编写脚本及整理中文译本数据,自动从英文版生成中文版,SVG / PDF 版本中的书籍图片现在链接至豆瓣页面. ...

  5. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

  6. 小强的Hadoop学习之路

    本人一直在做NET开发,接触这行有6年了吧.毕业也快四年了(6年是因为大学就开始在一家小公司做门户网站,哈哈哈),之前一直秉承着学要精,就一直一门心思的在做NET(也是懒吧).最近的工作一直都和大数据 ...

  7. pandas学习(数据分组与分组运算、离散化处理、数据合并)

    pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...

  8. Java学习之路(转)

    Java学习之路(书籍推荐)   一.基础类 1.<Thinking in java>(阅读2遍),入门第一位是建立正确的概念 2.<Core Java>这本书更贴近实践,更多 ...

  9. Qt 学习之路 2(1):序

    https://www.devbean.net/category/qt-study-road-2/page/10 原来开过QT学习之路1, 很棒, 再翻阅时已经没有了. 所以这次把看过的记录下来 Ho ...

随机推荐

  1. python基础-条件语句if

    if语句: if 判断条件: 执行语句 else: 执行语句 flag = Falsename = 'huipaodexiong'if name == 'python':    flag = True ...

  2. Java进阶07 嵌套类

    到现在为止,我们都是在Java文件中直接定义类.这样的类出现在包(package)的级别上.Java允许类的嵌套定义. 这里将讲解如何在一个类中嵌套定义另一个类. 嵌套 内部类 Java允许我们在类的 ...

  3. Convolutional Neural Networks for Visual Recognition 3

    Gradient Computing 前面我们介绍过分类器模型一般包含两大部分,一部分是score function,将输入的原始数据映射到每一类的score,另外一个重要组成部分是loss func ...

  4. ACM学习历程—Hihocoder 1288 Font Size(暴力 || 二分)

    http://hihocoder.com/problemset/problem/1288 这题是这次微软笔试的第一题,关键的是s的上限是min(w, h),这样s的范围只有到1000,这样就可以直接暴 ...

  5. Poj 1504 Adding Reversed Numbers(用字符串反转数字)

    一.题目大意 反转两个数字并相加,所得结果崽反转.反转规则:如果数字后面有0则反转后前面不留0. 二.题解 反转操作利用new StringBuffer(s).reverse().toString() ...

  6. 用Raspberry Pi搭建Azure IOT解决方案

    Raspberry Pi是一款基于Linux的单板机电脑.它由英国的树莓派基金会所开发,目的是以低价硬件及自由软件刺激在学校的基本计算机科学教育.树莓派配备一枚博通(Broadcom)出产的ARM架构 ...

  7. 【转】Pro Android学习笔记(十三):用户界面和控制(1):UI开发

    目录(?)[-] UI开发 方式一通过XML文件 方式二通过代码 方式三XML代码 UI开发 先理清一些UI概念: view.widget.control:这三个名词其实没有什么区别,都是一个UI元素 ...

  8. spring容器扩展功能之一:spring加载ApplicationContext.xml的四种方式

    容器加载Bean的常见两个类ApplicationContext和BeanFactory, 一.首先,看看spring中加载配置在xml中的Bean对象到容器 spring 中加载xml配置文件的方式 ...

  9. eclipse如何集成tomcat插件

    刚在Eclipse官方网站下载的Eclipse,需要自己手动安装tomcat插件才能配置tomcat服务器.网上好多安装方法,这里我就不厌其烦的再写一遍,边安装边截图讲解下安装方法. 首先你要去下载E ...

  10. oracle--循环PL/SQL--demo1---

    --简单的条件判断if–then --编写一个过程,可以输入一个雇员名,如果该雇员的工资低于2000,就给该员工工资增加10%. create or replace procedure sp_pro6 ...