我呢,有个小目标,就是把技术类的文章,写的有趣程序员
编程呢,最难的是什么?编程
我投票给入门ide
其实,把一我的带进编程的大门是最难的函数
而梦想橡皮擦这位大佬,就在作这个事情 (说白了,就是高深的文章写不出来,还要装作大佬,心好累,好不容易找到这么一个借口,真开心)学习
我要经过一个系列的pandas文章ui
让你学会这一个简简单单的模块spa
而后还能顺便写点好玩的东东3d
美哉~excel
每篇文章,让你阅读起来如丝般顺滑 code
上篇博客,我们就稍微了解了一丢丢series的函数
远远不够的 这篇呢,咱们继续
内心默念
pandas是处理数据的,是处理数的,数字的
OK,GET到这个就好多了
后面我就好编了
import pandas as pd
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
print(s)
复制代码
我建立了一个基本的Series,而后要对它进行处理了
对一个线性的数据来讲
咱们能够干不少事情
好比,我要获取最大最小值
import pandas as pd
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
print(s.min())
print(s.max())
复制代码
这个写法仍是太简单了,显示不出来咱们学到东西了
咱弄点新鲜的(其实就是官网比较复杂的例子)
先给series建立一个带有层次的索引
带有层次的索引,啥意思?
其实就是excel里面的合并单元格 看代码
idx = pd.MultiIndex.from_arrays([
['warm', 'warm', 'cold', 'cold'],
['dog', 'falcon', 'fish', 'spider']]
,names=['blooded', 'animal'])
s = pd.Series([4, 2, 0, 8], name='legs', index=idx)
print(s)
复制代码
一个关于冷血动物和温血动物关于有多少足的表格
唉,好长一段文字,输出长这个样子
就一个表格 当前前面依旧是index 真正的数据就后面那一列
而后,操做一番
idx = pd.MultiIndex.from_arrays([
['warm', 'warm','warm', 'cold', 'cold'],
['dog', 'falcon','people', 'fish', 'spider']]
,names=['blooded', 'animal'])
s = pd.Series([4, 2,2, 0, 8], name='legs', index=idx)
print(s)
print(s.min())
print(s.max(level='blooded'))
复制代码
后面的level就是控制多索引的哦~
看到结果,你能够秒懂吗?
s = pd.Series([4, 2,2, 0, 8], name='legs', index=idx)
print(s)
print(s.min()) # 输出0
print(s.max(level='blooded')) # 输出 下面的表格
复制代码
没错,我是下面的表格
学会了吧,这个学会了,min,max,sum,idxmin,idxmax你应该都会了
什么idx是啥?看看上面的代码 那个是索引... ...
对于series来讲,还有一个属性很是,很是重要,重要到使用以后,没啥效果?
这个属性就是T 没错,一个大写的字母T
哈哈哈,其实这个属性对于series来讲,基本没啥用
使用以后仍是等于本身自己
s = pd.Series([3,1,4],index=['a','b','c'])
print(s)
print(s.T)
复制代码
好像跑偏了,怎么看到属性去了
继续看函数啊
一个线性杂乱的数据,对于咱们来讲 还能够排序啊
import pandas as pd
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
复制代码
既然排序了,你一猜,就能猜到(其实通常人根本猜不到,也就老师以为你能猜到)
一个是按照值排序,一个是按照索引排序
import pandas as pd
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
print(s.sort_values())
print(s.sort_index())
复制代码
排序的一些参数,能够屡屡
Series.sort_values(axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last')
复制代码
inplace
看一下下面的代码,原地替换
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
sorted_s = s.sort_values(inplace=True)
print(sorted_s)
复制代码
这时候打印出来的是None,可是你打印s,就能出现排序以后的文字
明白了没? 就是把s变量直接给排序了
获取头部几条
头部头部head
获取末尾几条
tail,tail
import pandas as pd
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
print(s.head(2))
print(s.tail(2))
复制代码
获取部分数据能够,那么确定也能够删除数据喽 (我顺口说的)
Series.drop
import pandas as pd
s = pd.Series([3,1,4,1,5,9,2,6,8,3,6])
print(s.drop(labels=[0,1]))
复制代码
对于series来讲,labels参数是必备的
为何呢?由于其它的压根不支持
好了,又学到新知识点了吧
很少很多,几个正好
每日学一点吧,啊
明天写点啥,多是DataFrame吧
掏出你的手机,拍这个