情况:重复索引与非重复索引的取值返回类型是不一样的。

dfa = pd.DataFrame(np.random.randn(6, 4),index=list('aacdeb'),columns=list('ABCD'))
dfa

python pandas DataFrame 关于重复索引取值的一些坑

 

 

print('存在重复索引取一列的情况:',type(dfa.loc['a','A']),'取值方法:',dfa.loc['a','A'].iloc[0])
print('----------------------------------------------------------------------')
print('不存在重复索引取一列的情况:',type(dfa.loc['c','A']),'取值方法:',dfa.loc['c','A'])
print('----------------------------------------------------------------------')

#
#  如果在程序中需要通用的话,需要先转换
#  或者对返回结果类型先进行判断
#
print('通用取值方法,假设多个返回取其中一个:','重复情况:',pd.Series(dfa.loc['a','A']).iloc[0])
print('通用取值方法,:','不重复情况:',pd.Series(dfa.loc['c','A']).iloc[0])

输出情况:

python pandas DataFrame 关于重复索引取值的一些坑

 

 最终,就是要清晰,使用的数据情况,从而选择具体的取值方法。

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-21
  • 2021-09-01
  • 2022-12-23
  • 2022-12-23
  • 2021-11-22
  • 2021-10-28
猜你喜欢
  • 2022-02-01
  • 2022-12-23
  • 2022-01-04
  • 2022-12-23
  • 2022-12-23
  • 2021-08-02
  • 2022-02-09
相关资源
相似解决方案