来源:python中国网 时间:2019-07-19

  Series数据的增删改查、重新索引、对齐操作。

  查看元素

  1、head() 默认5条数据,可以设置参数显示几条。

  2、tail() 默认5条数据,可以设置参数显示几条。

  重新索引

  不是修改索引名,而是按照新的索引排序生成新Series。

  1、reindex()函数实现,返回新的Series,如果新索引和旧索引有重复则会保留原有的索引及对应的值。

  2、通过fill_value参数填充缺失值。

  对齐操作

  1、两个Series求和,索引相同的会自动相加

  2、创建的Series如果index参数的值(索引值)相同的话也可以相加计算,但是避免这样。

  删除元素

  drop()函数,inplace参数默认False,返回新的Series。inplace设置为True则修改原来的Series

  添加元素

  1、直接设置一个key来添加元素

  2、append()函数,返回新的Series,参数必须是Series or list/tuple of Series

  更改元素

  直接通过索引改

# -*- coding: utf-8 -*-

import numpy as np
import pandas as pd

# 数据查看
arr = np.random.rand(10)
s = pd.Series(arr)
print(s.head())
print(s.tail())
print(s.head(8))
print('----------------------')

# 重新索引
d = {'b': 1, 'a': 0, 'c': 2}
s = pd.Series(d, index=['b', 'c', 'd', 'a'])
s1 = s.reindex(['a',1,2,3])
print(s1)
s2 = s.reindex(['a',1,2,3],fill_value='哈哈')
print(s2)
print('----------------------')

# 对齐操作
arr = np.random.rand(2)
s = pd.Series(arr,index=['a','b'])
s2 = pd.Series(arr,index=['a','aa'])
s3 = pd.Series(arr,index=['a','a']) #索引值相同
print(s)
print(s2)
print(s3)
print(s + s2)
print(s + s3)
print('-----------------------')

# 删除操作
arr = np.random.rand(2)
s = pd.Series(arr,index=['a','b'])
s2 = pd.Series(arr)
res = s.drop(['a'])
res2 = s2.drop([1])
print(res)
print(res2)
result = s.drop(['a','b'])
print(result)
result_new = s.drop(['a'],inplace=True)
print(result_new,'====')
print(s)
print('---------------------------')

# 添加元素
arr = np.random.rand(2)
s = pd.Series(arr,index=['a','b'])
s['laodong'] = '不错'  # 添加个索引
s2 = s.append(s)  # 追加一个Series
print(s)
print(s2)
print('--------------------------')

# 更改元素
arr = np.random.rand(2)
s = pd.Series(arr,index=['a','b'])
s['a'] = '不错'
print(s)
D:python3installpython.exe D:/python/py3script/test.py
0    0.025333
1    0.238886
2    0.196152
3    0.293700
4    0.380843
dtype: float64
5    0.162423
6    0.413844
7    0.889539
8    0.347030
9    0.169694
dtype: float64
0    0.025333
1    0.238886
2    0.196152
3    0.293700
4    0.380843
5    0.162423
6    0.413844
7    0.889539
dtype: float64
----------------------
a    0.0
1    NaN
2    NaN
3    NaN
dtype: float64
a     0
1    哈哈
2    哈哈
3    哈哈
dtype: object
----------------------
a    0.295824
b    0.206319
dtype: float64
a     0.295824
aa    0.206319
dtype: float64
a    0.295824
a    0.206319
dtype: float64
a     0.591648
aa         NaN
b          NaN
dtype: float64
a    0.591648
a    0.502143
b         NaN
dtype: float64
-----------------------
b    0.799687
dtype: float64
0    0.350846
dtype: float64
Series([], dtype: float64)
None ====
b    0.799687
dtype: float64
---------------------------
a          0.169791
b          0.690881
laodong          不错
dtype: object
a          0.169791
b          0.690881
laodong          不错
a          0.169791
b          0.690881
laodong          不错
dtype: object
--------------------------
a          不错
b    0.398336
dtype: object

Process finished with exit code 0