概述
pandas有三种数据结构
Series:
一维数组,与Numpy中的一维array类似。
二者与Python基本的数据结构List也很相近,其区别是:List中的元素可以是不同的数据类型,而Array和Series中则只允许存储相同的数据类型,这样可以更有效的使用内存,提高运算效率。
Series和一维数组最主要的区别在于Series类型具有索引(index),可以和另一个编程中常见的数据结构哈希(Hash)联系起来。
创建一个Series的基本格式是s = Series(data, index=index, name=name)
s = Series(np.random.randn(5), index=['a', 'b', 'c', 'd', 'e'])
ss = Series(np.random.randn(5))
d = {'a': 0, 'b': 1, 'c': 2} #以字典创建
s = Series(d)
Series数据的访问
s[:2]
s[[2,0,4]]
s[['e', 'i']]
DataFrame:
二维的表格型数据结构。
DataFrame是将数个Series按列合并而成的二维数据结构,每一列单独取出来是一个Series,这和SQL数据库中取出的数据是很类似的。
所以,按列对一个DataFrame进行处理更为方便,用户在编程时注意培养按列构建数据的思维。
DataFrame的优势在于可以方便地处理不同类型的列,因此,就不要考虑如何对一个全是浮点数的DataFrame求逆之类的问题了,处理这种问题还是把数据存成NumPy的matrix类型比较便利一些。
可以通过series直接创建
d = {'one': Series([1., 2., 3.], index=['a', 'b', 'c']), 'two': Series([1., 2., 3., 4.], index=['a', 'b', 'c', 'd'])}
df = DataFrame(d)
df = DataFrame(d, index=['r', 'd', 'a'], columns=['two', 'three'])
Panel:
三维的数组,可以理解为DataFrame的容器。
摘自:https://www.jianshu.com/p/8d8c9d44d21a
https://www.jianshu.com/p/ab45e72e1b68
最后
以上就是故意奇异果为你收集整理的pandas的数据结构Series、DataFrame、PanelSeries:DataFrame:Panel:的全部内容,希望文章能够帮你解决pandas的数据结构Series、DataFrame、PanelSeries:DataFrame:Panel:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复