python数据分析之pandas(三)Index

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
>>>
发布了127 篇原创文章 · 获赞 10 · 访问量 24万+

猜你喜欢

转载自blog.csdn.net/u012599545/article/details/104255769