关于python:如何在数据框中选择特定列?

How to choose specific columns in a dataframe?

本问题已经有最佳答案,请猛点这里访问。

我有一个数据帧,有25列和一个数组([2,4,8,10,11,12,13,14,17,18,19,20,21,22,23],dtype=int64)。我想从数据帧中选择一些特定的列,这些列的索引由数组元素给出,并将它们存储在新的数据帧中(比如df1)。因此,例如,新的数据帧将具有原始数据帧的第2列、第4列、第23列。


您可以使用iloc来完成此操作。例如:

1
2
3
4
5
6
7
import pandas as pd

df = pd.DataFrame(
    [np.random.rand(5),np.random.rand(5), np.random.rand(5), np.random.rand(5)]
)

df.iloc[:,[1,3]]

输出:

1
2
3
4
5
    1           3
0   0.883848    0.409460
1   0.537549    0.426643
2   0.825185    0.361043
3   0.039343    0.674435

您可能会看到旧的答案建议使用.ix(例如我在这个问题中修改的答案),但是,这已经被否决了。