Pandas在DataFrame中选择某些列和n个最后一列

时间:2017-11-01 11:25:40

标签: python pandas dataframe

我有一个包含多个列的DataFrame。我想从此DataFrame中选择一些分散在其中的特定列,然后在对这些特定列进行过滤后,我想要最后的n列。

X = dataset.ix[['Dollars', 'Rate', 'Hours', 'BUY', 'SELL'],:]

这些是我想要的特定列:

'Dollars', 'Rate', 'Hours', 'BUY', 'SELL'

然后我只想在选择5列中的最后一列后立即想要DataFrame中的其余列,因此,:。例如:

根据BUY | some unwanted column | SELL | ... | ...列,我想选择SELL列之后的所有列。

我确实使用此方法选择了所有这些方法,但它们都是NaN

我做错了什么?

1 个答案:

答案 0 :(得分:1)

使用列进行一些列表操作:

c = ['Dollars', 'Rate', 'Hours', 'BUY', 'SELL']
i = df.columns.get_loc(c[-1]) + 1

c += df.columns[i:].tolist()    

df[c]

另请注意,ix已被弃用,有利于基于loc / iloc的索引器,因此请不要使用它。