pandas的Index对象

导读:本篇文章讲解 pandas的Index对象,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

Index对象保存着索引标签数据,它可以快速找到标签对应的整数下标,其功能与Python的字典类似。

dict1={"Province":["Guangdong","Beijing","Qinghai","Fujiang"],
      "year":[2018]*4,
      "pop":[1.3,2.5,1.1,0.7]}
df1=DataFrame(dict1)
df1
代码结果
        Province    pop    year
0    Guangdong    1.3    2018
1    Beijing    2.5    2018
2    Qinghai    1.1    2018
3    Fujiang    0.7    2018

调用.columns返回DataFrame对象的列索引(即所有列标签):

col_index=df1.columns
col_index.values

代码结果:

array(['Province', 'pop', 'year'], dtype=object)

ind_index=df1.index
ind_index.values

代码结果:

array([0, 1, 2, 3], dtype=int64)

Index对象可当做一维数组,适合Numpy数组的下标运算,但Index对象只是可读,创建后不可修改。

print(col_index[[1,2]])
print(ind_index[ind_index>1])

代码结果:
Index(['pop', 'year'], dtype='object')
Int64Index([2, 3], dtype='int64')

index对象具有字典的映射功能,.get_loc(value)获得单值得下标,.get_indexer(values)获得一组值得下标,当值不存在则返回-1:

print(col_index.get_loc('pop'))
print(col_index.get_indexer(['pop','year']))

代码结果:
1
[1 2]

Index对象调用Index()来创建,可传递给DataFrame对象的参数index和columns。因为Index是不可变的,因此多个DataFrame对象的索引可以是同个Index对象。

index=pd.Index(['a','b','c'])
df2=DataFrame(np.random.randint(1,10,(3,3)),index=index,columns=index)
df2

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/102902.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!