pandas库简介:
在上一篇文章里面,我尽可能地介绍了numpy的简单使用及其语法,在这篇博客里面,我们继续来一起学习数据分析的另一个很强大的库,pandas,他是以numpy为基础的,所以如果你学会学好了numpy那么这篇博客你看起来就会好很多,如果读者没有看过numpy,那么建议在我的主页数据分析栏目里面查看,里面有很好的介绍。
pip3 install pandas,安装pandas,这次我们主要讲解的是pandas的Series对象,下一篇我们在讲解pandas里面一个对重要的对象DataFrame.
操练:
使用pandas首先要导入pandas的包
![](https://img.haomeiwen.com/i20557576/3232602cdc927c18.png)
pandas数据结构简介
pandas 核心数据结构有两个:Series、DataFrame
声明Series对象
声明一个Series对象,传入一个列表,索引自动生成,
![](https://img.haomeiwen.com/i20557576/4d18bbe6898d7718.png)
声明一个Series对象,并指定索引
![](https://img.haomeiwen.com/i20557576/6b8c4a5475b93c73.png)
查看Series值和索引
![](https://img.haomeiwen.com/i20557576/e4644a39bf8ee0e5.png)
访问Series中的元素
你可以向numpy一样,使用索引,切片机制来访问我们的Series
![](https://img.haomeiwen.com/i20557576/d414edbcbb17ab1c.png)
为Series对象元素赋值
series提供了两套索引机制,什么意思呢?就是说如果你没有指定索引,系统会自动创建,如果你创建了,那么系统以你的为准,但是默认的索引也会给你创建,所以你可以使用两套索引来取值进行操作。具体如下:
![](https://img.haomeiwen.com/i20557576/d78d43b209ac5c7c.png)
通过numpy 的 ndarry创建Seires对象
同样我们也可以使用numpy和已有的Series对象来创建新的pandas Series对象
![](https://img.haomeiwen.com/i20557576/17b0075f73b24ec6.png)
过滤Series对象中的值
![](https://img.haomeiwen.com/i20557576/0772aa919b7bbab2.png)
Series对象作运算
![](https://img.haomeiwen.com/i20557576/ca2379c0426629d2.png)
Series对象的组成元素
unique()是判断series里面是否有重复的元素,有的话他会去除重复元素
value_counts()是查看每个元素出现了多少次并且会计算出现的次数
![](https://img.haomeiwen.com/i20557576/19bd48fe4e569866.png)
isin()会根据参数返回一个bool返回值,意思是判断0,3是否在series对象里面,在的话就返回True,不在就是false
如果我们想要查看满足条件的值,直接在用一个括号即可查看。
![](https://img.haomeiwen.com/i20557576/50d373295de833da.png)
关于NaN
nan,不是一个数的意思,让我们先看一个例子(导入numpy(np))
![](https://img.haomeiwen.com/i20557576/61232617885ee4e7.png)
我们使用np.NaN属性得到了一个NaN并作为列表的一个参数传入Series,得到结果如上
查看NAN的几个方法:
这个其实很简单,根据名字来看,我想读者就基本知道函数的功能了。单独使用的话同样是返回满足条件的bool值,满足就为True,不满足就返回false,取值的话加一个大括号即可。
![](https://img.haomeiwen.com/i20557576/962970a51a3e8b74.png)
通过字典创建Series对象
pandas很灵活,同样我们也可以使用字典来创建,默认的话他会把字典的键作为索引。
如果你传入的字典和你要自定义的index不一样,那么Series会一一对应,index不对应的话,就以我们上面说过的NaN来代替。不会删除
![](https://img.haomeiwen.com/i20557576/267fb8647a6c7127.png)
Series对象运算¶
numpy可以使用运算,既然pandas以numpy为基础,那么pandas同样也可以。结果如下:
注意,在series对象之间做运算的时候,也是会一一对应索引,如果索引一致,那么进行相应的运算。如果没有,那么还是以NaN代替。注意:顺序可能不一致,这个也不影响。
![](https://img.haomeiwen.com/i20557576/2a46e80ef1bc88a7.png)
总结:
这里,pandas Series对象的基本介绍和使用语法就说完了,希望对大家
有帮助!喜欢的可以点赞支持一下,谢谢,下一次我们讲解pandas Dataframe 对象。
网友评论