Pandas-Series

Pandas-Series

导入pandas:

import pandas as pd
from pandas import Series,DataFrame
import numpy as np

Series

Series是一种类似与一维数组的对象,由下面两个部分组成:

  • values:一组数据(ndarray类型)
  • index:相关的数据索引标签

series的创建

由列表或者numpy数组创建

默认索引为0到n-1的整数型索引,也叫隐式索引

#使用列表创建Series
Series(data=[1,2,3])
Series(data=[1,2,3],index=['a','b','c']) #显式索引

#使用numpy创建Series,只能用numpy创建的一维数组才可以使用
s = Series(data=np.random.randint(0,100,size=(4,)),index=['a','b','c','d'])

series的索引和切片

可以使用中括号取单个索引(此时返回的是元素类型),

或者中括号里一个列表取多个索引(此时返回的是一个Series类型)。

1.显式索引

使用index中的元素作为索引值

使用s.loc[](推荐):注意,loc中括号中放置的一定是显示索引,此时是闭区间,左右两个值都能取到

2.隐式索引

使用整数作为索引值

使用.iloc[](推荐):iloc中的中括号中必须放置隐式索引,此时是半开区间

3.隐式索引切片和显示索引切片

显示索引切片:index和loc

series的属性和方法

可以通过shape,size,index,values等得到series的属性

s.values

s.index

可以使用s.head(),tail()分别查看前n个和后n个值

s.head(2)
s.tail(2)

对Series元素进行去重

s = Series(data=[1,1,2,2,3,3,3,4,5,6,7,7,8,9,9,9])
s.unique()

数据缺失NaN

当索引没有对应的值时,可能出现缺失数据显示NaN(not a number)的情况

使得两个Series进行相加

s1 = Series(data=[1,2,3],index=['a','b','c'])
s2 = Series(data=[1,2,3],index=['a','b','d'])
s = s1 + s2

索引相同的对应相加,不同的显示NAN

可以使用pd.isnull(),pd.notnull(),或s.isnull(),notnull()函数检测缺失数据

s.isnull()
s.notnull()

满足条件为True,不满足为False

对数据进行筛选

s[[True,True,False,False]] # 只显示True所对应的内容

s[s.notnull()]

Series的运算

add() sub() mul() div()

s1.add(s2)
索引对应的进行运算,不匹配的显示NaN
posted @ 2020-06-11 17:02  Hedger_Lee  阅读(166)  评论(0编辑  收藏  举报