保留Pandas DataFrame中特定的列

3

我有一个使用pandas从csv文件导入的数据框。这个数据框有160个变量,我只想保留5、9、10、46、89。

我尝试了以下代码:

dataf2 = dataf[[5] + [9] + [10] + [46] + [89]]

但是我遇到了这个错误:
KeyError: '[ 5 9 10 46 89] not in index'

你能提供一些样本数据吗?比如 df.head - Patrick Haugh
@PatrickHaugh 很遗憾,数据集太大了。我尝试使用了这个解决方案 https://dev59.com/QmUp5IYBdhLWcg3wvpgM#15073977 ,假设从这个解决方案中我想要保留第1、5、7列。 - cottinR
2个回答

5

如果你想按照数据集中的位置而不是名称来引用列,你需要使用 df.iloc

dataf.iloc[:, [5, 9, 10, 46, 89]]

在逗号之前指定行索引,在逗号之后指定列索引。


3
如果您想保留的列为:5、9、10、46、89,则可以像这样对它们进行索引:
dataf2 = dataf[[5, 9, 10, 46, 89]]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接