Index对象声明后不能改变,不同的数据结构公用Index对象
1. Index对象的方法
frame.idxmin()、frame.idxmax() //索引值最小和最大元素
2. 含有重复标签的Index
index=['a', 'a']
frame.index.is_unique //索引是否唯一
3. 更换索引
frame.reindex(['a', 'b'])
注意:会删除在新index中不存在的标签,重新排序
可以使用method='ffill/bfill',利用之前或之后的没有缺失的索引值做插值
另外可同时更换columns
4. 删除索引行数据
frame.drop('a') //删除对应的索引行
frame.drop(['a', 'b'])
>>> s = pd.Series([1,2,3], ['a', 'b', 'c'])
>>> s.drop('a')
b 2
c 3
dtype: int64
5.删除列数据
frame.drop(['col1', 'col2'], axis=1) //1为列,0为删除行
>>> s = pd.DataFrame(np.arange(6).reshape(3,2), ['a', 'b', 'c'], columns=['c1',
'c2'])
>>> s
c1 c2
a 0 1
b 2 3
c 4 5
>>> s.drop('c1', axis=1)
c2
a 1
b 3
c 5
>>>
6.算术和数据对齐
以求和为例,对于刚定义的两个Series对象,有些标签两者都有,有些只属于其中一个对象。如果一个标签,两个Series都有,就把他们的元素相加,反之,标签也会xian显示在结果(新Series对象)中,只不过元素为NaN
>>> import pandas as pd
>>> s1 = pd.Series([1,2,3], ['a', 'b', 'c'])
>>> s2 = pd.Series([4,5,6], ['a', 'b', 'd'])
>>> s1 + s2
a 5.0
b 7.0
c NaN
d NaN
dtype: float64
>>>