Python中重复索引处理方法

Pandas 数据框中的索引可以重复,因此切片取数时需注意。

1.判断索引是否重复

  • Series 索引重复判断
import pandas as pd
import numpy as np
# 重复索引 是否唯一
s = pd.Series([1,2,3,4,5], index=['a','a','b','c','d'])
s.index.is_unique # False
  • DataFrame 索引重复判断
a = np.arange(9).reshape(3,3)
data = pd.DataFrame(a, 
                    index=['a','b','c'],
                    columns=['one','two','one'])
# 行索引是否重复
data.index.is_unique # True
# 列索引是否重复
data.columns.is_unique # False

2.索引取值

如果一个索引对应多个值,Series 返回的是一个 Series。

如果一个索引对应一个值,Series 返回的是一个标量。

DataFrame 返回的始终是一个 DataFrame。

  • Series 索引取值
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:725638078
s = pd.Series([1,2,3,4,5], index=['a','a','b','c','d'])
type(s['a']) # pandas.core.series.Series
s['a']
'''
a    1
a    2
dtype: int64
'''
  • DataFrame 索引取值
a = np.arange(9).reshape(3,3)
data = pd.DataFrame(a, 
                    index=['a','b','c'],
                    columns=['one','two','one'])
type(data.loc['b']) # pandas.core.series.Series

data['one']
'''
   one  one
a    0    2
b    3    5
c    6    8
'''
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值