使用pandas中的标签进行动态索引

时间:2016-10-21 15:57:06

标签: python pandas

我想使用标签动态索引pandas DataFrame的元素。 说我有

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

我想要带有标签的元素' a'和' A'。

"静态"这很简单:

df1.loc['a','A']

但是如何在运行时动态构建这样的查询?

indexer = ['a', 'A']
df1.loc[indexer]   .... fails!

我不了解loc的内部,以及它接收/接受的对象是什么......

2 个答案:

答案 0 :(得分:1)

试试这个

df1.loc[indexer[0], indexer[1]]

答案 1 :(得分:0)

根据numpy indexing documentation with variable number of indices,可以使用元组(但不是列表)来完成我想要做的事情:

In[141]: indexer = ('a', 'A')
In[142]: df1.loc[indexer]
Out[141]: -0.25517278351855893