import pandas as pd
x=pd.Series([1,2,3])
y=pd.range(5)
z=pd.Series({‘a’:1,‘b’:2,‘c’:3})
m=pd.Series(np.array([1,2,3]))
pandas在创建啊数组的时候和numpy差不多,区别在于pandas可以创建字典形式的数组,可以自定义数组的索引,Serise了;类似于字典的索引通过key,values索引,不支持负数索引,而adarray类似于list索引,支持负数索引
x=pd.Series(33,index=[‘a’,‘b’,‘c’])
输出结果
a 33
b 33
c 33
可以实现数组的标量统一化
Series属性
index
values
Series可以通过index和values访问索引和值
shape
size
type
Series在进行运算的时候是根据标签进行运算的,如果是不一致,就会产生空值,空值和任何值做运算得到都是空值(NaN)例如:
s1=pd.Series([1,2,3],index=[1,2,3])
s2=pd.Series([2,3,4],index=[2,3,4])
display(s1*s2)
输出的结果如下:
1 NaN
2 4.0
3 9.0
4 NaN
在统计函数中,numpy吃力NaN但是Series忽略NaN 例如:
s1=np.array([1,2,3,np.nan])
s2=pa.Series([1,2,3,np.nan])
display(np.mean(s1))
display(np.mean(s2))
输出结果
nan
2
标签索引和位置索引
loc标签索引访问
lioc位置索引访问
利用标签索引来访问多个元素
s=pd.Series([1,2,3],index=list(‘abc’))
display(s.loc[[‘a’,‘c’]])
注意:loc后面是[[]]
通过位置索引访问元素
display(s.iloc[[0,2]])
通过索引得到的数据是原数据的拷贝,他们彼此之间不会产生干扰
Series删除用del函数
del s[‘a’]表示的删除标签为a的数据
也可以用drop
s.drop(‘f’,inplace=False)
inplace=False时:返回的是原数据和一个呗辅助的数据,被复制的数据里面不存在drop的数据
inplace=True时:返回的是原数据,注意,只有原数据,不存在drop的数据
删除多个数据
s=s1.drop([‘a’,‘b’,‘c’],inplace=True)