Pandas详解三之Index对象

约定
import pandas as pd
from pandas import DataFrame
import numpy as np

Index

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

dict1={"Province":["Guangdong","Beijing","Qinghai","Fujiang"],
      "year":[2018]*4,
      "pop":[1.3,2.5,1.1,0.7]}
df1=DataFrame(dict1)
df1
代码结果
Provincepopyear
0Guangdong1.32018
1Beijing2.52018
2Qinghai1.12018
3Fujiang0.72018
  • 调用.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
代码结果:
abc
a461
b869
c916

谢谢大家的浏览,
希望我的努力能帮助到您,
共勉!

  • 31
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Pandas 是一个强大的数据分析工具,提供了很多常用的函数来处理数据,下面是一些常用的函数及其用法: 1. read_csv():读取 CSV 文件并返回一个 DataFrame 对象。 2. head():返回 DataFrame 的前几行数据,默认为前 5 行。 3. tail():返回 DataFrame 的后几行数据,默认为后 5 行。 4. info():返回 DataFrame 的基本信息,包括每列的数据类型、非空值数量等。 5. describe():返回 DataFrame 的基本统计信息,包括计数、均值、标准差、最小值、最大值等。 6. shape:返回 DataFrame 的行数和列数。 7. columns:返回 DataFrame 的列名。 8. index:返回 DataFrame 的行索引。 9. loc[]:根据行标签和列标签访问 DataFrame 中的元素。 10. iloc[]:根据行索引和列索引访问 DataFrame 中的元素。 11. dropna():删除 DataFrame 中的缺失值。 12. fillna():用指定的值或方法填充 DataFrame 中的缺失值。 13. groupby():按照指定的列对 DataFrame 进行分组。 14. apply():对 DataFrame 的每一列应用指定的函数。 15. pivot_table():根据指定的列计算 DataFrame 的透视表。 16. merge():将两个 DataFrame 按照指定的列进行合并。 17. sort_values():按照指定的列对 DataFrame 进行排序。 18. drop_duplicates():去除 DataFrame 中的重复行。 19. value_counts():统计 DataFrame 中每个元素出现的次数。 20. isnull():判断 DataFrame 中的元素是否为空值。 这些函数覆盖了 Pandas 中的很多常用操作,掌握它们对于数据分析和处理非常有帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值