选择具有整数命名列的数据框中的列

时间:2014-05-28 13:37:01

标签: python pandas

在以下数据框中,我可以使用列表访问两列:

df = pd.DataFrame(np.random.randn(4,4), index=[0,.5,1.,1.5], columns=['10', '20', '30', '40'])
df[['10','20']]
        10        20
0.0  1.048499  0.339459
0.5 -0.802472  1.348099
1.0  0.552306 -2.117145
1.5  1.737839  1.062061

当列名是数字(在这种情况下为整数)时,相同的切片会返回错误

df = pd.DataFrame(np.random.randn(4,4), index=[0,.5,1.,1.5], columns=[10, 20, 30, 40])
df[[10,20]]
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()

当列名是数字而不是字符串时,如何获得相同的结果?

有关此的任何提示吗?

1 个答案:

答案 0 :(得分:0)

你确定整数没有转换为字符吗?

尝试:

df = pd.DataFrame(np.random.randn(4,4), index=[0,.5,1.,1.5], columns=[10, 20, 30, 40])
df[["10","20"]]

或:

DF [[1,2]]