Series
Series的list特性
Series是pandas内置的一种类似一维数组的对象,数据列具有许多list的特性,如切片。同时具有与之相关的标签列index一一对应。
1 |
input:obj = Series([11, 22, 33, 44]) |
左边为索引index,右边为值values。在没有指定index时,默认index为从0开始自增。可以通过index和values属性获得其数组的表现形式,如obj.index。
1 |
input: |
Series可以通过索引的方式选取Series中的单个或一组值,即可以传入索引值数组,也可以传入与Series长度相等的boolean数组。
支持NumPy数组运算,并保留索引和值之间的链接。
Series的dict特性
1 |
input: '22' in obj |
还可以将Series看成是一个定长的有序字典,同时也可以利用字典来创建Series,字典的index即对应Series的index。
1 |
|
在对两个Series进行操作时,只要某个index对应的值缺失一次,即结果为NaN。pandas中的isnull和notnull函数可以检测确实数据。
Series具有name和index.那么属性,在赋值后可以显示出来。
DataFrame
DataFrame是一个表格型的数据结构,含有一组有序的列,每列可以是不同的类型,我的理解是每一列是一个Series,DataFrame的index为所有的列共享并一一对应。
DataFrame既有行索引也有列索引,可以视为由Series组成的字典。
1 |
|
city | year | pop | |
---|---|---|---|
0 | xm | 2000 | 15 |
1 | xm | 2001 | 16 |
2 | fz | 2000 | 20 |
1 |
# 手动为df的列指定顺序,如果原df的列不包括某个index值,则这一列都视为缺失,如下debt |
year | city | pop | debt | |
---|---|---|---|---|
1 | 2000 | xm | 15 | NaN |
2 | 2001 | xm | 16 | NaN |
3 | 2000 | fz | 20 | NaN |
1 |
# DataFrame的一列对应一个series |
1 |
1 xm |
1 |
# 列赋值,可以传入单个值也可以传入与df长度相同的数组 |
city | year | pop | new | |
---|---|---|---|---|
0 | xm | 2000 | 15 | 100 |
1 | xm | 2001 | 16 | 100 |
2 | fz | 2000 | 20 | 100 |
PS:
python具有垃圾回收机制,因此del删除的是引用,而不是内存地址。
博客园文章链接 www.cnblogs.com/shinyruouo/articles/pandas1
原文:大专栏 利用Python进行数据分析--Pandas(1)