昨天,有个家伙,留言给我说 嫌我很差好写博客函数
就知道给文章配表情包学习
在这里,郑重的回复一下spa
我愿意(╬◣д◢) 翻译
这篇博客,咱们继续围绕着dataframe转圈圈吧3d
首先从计算函数提及code
咱先声明一个dataframe,方便后续操做cdn
import pandas as pd
df_dict = {
"boys":[10,20,30],
"girls":[20,40,60]
}
df = pd.DataFrame(df_dict)
print(df)
复制代码
对于一个高手来讲,从上帝视角对数据有一个基本的把握是最重要的blog
那么咱们须要一个函数索引
describe
图片
你只须要使用一下,就能获得不少的信息哦~
来,看一下结果
boys girls
count 3.0 3.0
mean 20.0 40.0
std 10.0 20.0
min 10.0 20.0
25% 15.0 30.0
50% 20.0 40.0
75% 25.0 50.0
max 30.0 60.0
复制代码
这不要啥有啥么
只要你英文没啥大问题,认识count,mean,std,min,max
恭喜你,上面的数据 你都能看懂
这上帝视角
数据尽收眼底
pandas神奇的地方即将出现
当你学会一个函数 同步你会学会好几个
我拿count举个栗子啊 为何,拿着个举例子
还不是由于它最简单!
先看代码,在讲解
import pandas as pd
df_dict = {
"boys":[10,20,30],
"girls":[20,40,60]
}
df = pd.DataFrame(df_dict)
print(df.count(axis=0))
复制代码
输出的结果,请注意
boys 3
girls 3
dtype: int64
复制代码
是个series
没错了
那么,重点来了,我这个伪大佬要开课了
df.count()
函数,统计cells个数, 额,仍是大白话吧
就是统计行或者列的小格子个数
嗯,这么说,容易懂
它有个参数,很是,很是,很是重要
之后会常常碰到
这个参数,就是axis,翻译成中文,叫作轴
没错,就是坐标轴的那个轴
默认值呢是0
0等于index 1等于columns
难度来了,这个地方很差记(由于,我老是搞错 Σ(っ°Д°;)っ)
在尝试大白话解释一下df.count(axis=0)
的意思
统计每一列单元格(小格子)数量
咦?不太对啊
刚刚不是还说0等于index么?
那df.count(axis=0)
,不该该统计行么?咋还统计成列了呢?
解释最后一次了哦
axis=0 这个参数表示为每列生成计数
因此,列名有几个,统计出来的结果就有几个
这个很容易晕哦~
我以为你应该晕了
哎~慢慢绕吧
同理axis=1就表示为每行生成计数
啦
刚刚的数据有三行,那对应的确定生成三行喽
小提示
axis='index' 等于 axis = 0
axis = 'columns' 等于 axis = 1
复制代码
为何要在这个地方叨叨这么多呢
还不是由于下面这个图
我相信,你应该对axis这个函数瞬间感兴趣了
这彻底搞不定,无法用的节奏啊
难不成,每次都跟我同样
先猜0,不对,在换成1
哈哈哈哈哈哈哈哈哈 (好像暴露了,我菜的本质了呢)
哈哈,这三个函数咱看一下,其实很是简单的
import pandas as pd
df_dict = {
"boys":[10,20,30],
"girls":[20,40,60]
}
df = pd.DataFrame(df_dict,index=['class1','class2','class3'])
print(df.mean(axis=1))
复制代码
上面是获取值
记住,有值就有索引
而后再展现一段代码
需求,咱们要获取每列中最小值的索引
import pandas as pd
df_dict = {
"boys":[10,20,30],
"girls":[20,40,60]
}
df = pd.DataFrame(df_dict,index=['class1','class2','class3'])
print(df.mean(axis=1))
print(df.idxmin())
复制代码
电脑面前的你,赶忙的吧,
你一试就知道结果了
还等什么?
其余的,像方差,求和,标准差,都去试试吧
你能够滴!
T
来了在学习series的时候,咱们用了一个s.T 神奇的是啥效果也没有
今天用dataframe在来试一下
import pandas as pd
df_dict = {
"boys":[10,20,30],
"girls":[20,40,60]
}
df = pd.DataFrame(df_dict,index=['class1','class2','class3'])
print(df)
print("x"*50)
print(df.T)
复制代码
看到没? 出现效果了
行索引,变成列索引 列索引,变成行索引
厉害,厉害
其实这个就是转置
线性代数上线啦
下课!
话很少说,结束,开始展现公众号