小编ezl*_*l33的帖子

Pandas .loc与Tuple列名

我目前正在与一个使用元组名称的panda合作.当尝试像普通列一样使用.loc时,元组名称会导致它出错.

测试代码如下:

import pandas as pd
import numpy as np
df1 = pd.DataFrame(np.random.randn(6,4),
                   columns=[('a','1'), ('b','2'), ('c','3'), 'nontuple'])
df1.loc[:3, 'nontuple']
df1.loc[:3, ('c','3')]
Run Code Online (Sandbox Code Playgroud)

第二行按预期工作,并从0:3显示"非元组"列.第三行不起作用,而是给出错误:

KeyError:"[[''中没有[('c','3')]在[列]中

知道如何解决这个问题,而不是使用元组作为列名吗?

此外,我发现下面的代码即使.loc没有:

df1.ix[:3][('c','3')]
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

5
推荐指数
1
解决办法
3825
查看次数

标签 统计

dataframe ×1

pandas ×1

python ×1