pandas.Series 基本技巧
- append:添加
- drop:刪除
- 修改
- head / tail:數據查看
- reindex:重新索引
- 對齊
append:添加
import numpy
import pandas
# 下標索引/標簽index添加值
s1 = pandas.Series(numpy.random.rand(5))
s2 = pandas.Series(numpy.random.rand(5), index = list('abcde'))
s1[5] = 100
s2["f"] = 100
print(s1)
print(s2)
# .append方法直接添加一個數組
# .append方法生成一個新的數組,不改變之前的數組
s3 = s1.append(s2)
print(s3)
drop:刪除
import numpy
import pandas
s = pandas.Series(numpy.random.rand(5), index = list('abcde'))
print(s)
s1 = s.drop("a")
print(s1)
# inplace:刪除元素之後返回值,默認為False
s2 = s.drop(["b","c"],inplace = True)
# 如果inplace為True,返回值為None
print(s2)
修改
s = pandas.Series(numpy.random.rand(3),index = ['a','b','c'])
# 通過索引直接修改,類似列表
s['a'] = 100
s[['b','c']] = 200
print(s)
head / tail:數據查看
import numpy
import pandas
s = pandas.Series(numpy.random.rand(15))
print(s.head(2)) # .head()查看頭部數據,默認查看5條
print(s.tail()) # .tail()查看尾部數據,默認查看5條
reindex:重新索引
import numpy
import pandas
s = pandas.Series(numpy.random.rand(5),index = list("abcde"))
print(s)
# .reindex將會根據新的索引重新排序,如果當前索引不存在,則引入缺失值
s2 = s.reindex(list("bcfea")) # .reindex()中也是寫列表
# 這裡'f'索引不存在,所以引入缺失值為NaN
print(s2)
# fill_value:填充缺失值的值
s3 = s.reindex(list("qwert"),fill_value = 0)
print(s3)
對齊
import numpy
import pandas
# Series上會根據標簽自動對齊
s1 = pandas.Series(numpy.random.rand(3),index = (["愛衣","李依","美琴"]))
s2 = pandas.Series(numpy.random.rand(2),index = (["美琴","李依"]))
# index順序不會影響數值計算,會以標簽來計算
# 空值和任何值計算結果仍為空值
print(s1 + s2)