“戏精少女”的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 打开,长按,然后关注了

看,给你那么多的技巧,咋就关注不上了呢!

posted @ 2019-06-10 14:40  梦想橡皮擦  阅读(644)  评论(0编辑  收藏  举报