为什么我不能仅使用括号访问Pandas中的Dataframe中的单个元素?

时间:2017-12-11 20:50:42

标签: python pandas dataframe syntax

我理解允许以下两种方式:

  1. 访问单个列:df['rowA']
  2. 访问几行:df[3:5]
  3. 但是df[3:5, 'rowA']df[7, 9]会给出异常(TypeError: unhashable type: 'slice')。这背后的理由是什么?

2 个答案:

答案 0 :(得分:1)

而不是df[3:5, 'rowA']使用:

df.loc[df.index[3:5], 'rowA']

而不是df[7, 9]使用:

df.iloc[[7,9]]

请阅读official Pandas docs about indexing and selecting data

答案 1 :(得分:0)

您也可以链接它们,获取列和切片的组合。订单无关紧要。

df['rowA'][3:5]

或者:

df[3:5]['rowA']