在数据框中选择列的更好方法是什么?

时间:2020-07-29 06:59:55

标签: pandas

我现在正在研究有关熊猫的教程,并提到作者(但尚未解释),如果您要从数据框中选择一些列,则最好的方法就是使用

df.loc[:,[list_of_column_names]]

另一种对我自己更方便的方法df[[list_of_column_names]]可能会引起一些问题,因此不建议使用。

但是为什么呢? 第二种选择可以解决哪些问题?

此外,从数据框中选择列的最佳方法是什么?

Thx

1 个答案:

答案 0 :(得分:0)

只是为自己澄清一下,也许会发现隐藏的问题。

以防万一,当使用链接索引时,还不清楚我们会收到什么样的对象作为响应。

如果仅使用df[column_name],我们将收到原始数据帧的视图。但是如果是布尔切片,例如df[column name < 5]我们收到了原始数据帧的副本。在这种情况下,所有进一步的更改都不会保存在原始数据框中。

因此,最后,如果您需要将所有操作保存到原始数据帧中,请使用df.loc[(boolean_rows_slicing or :), [list_of _columns]]。所有切片操作合而为一。

如果不需要保存工作,请使用.copy()。 例如。 df.loc[(boolean_rows_slicing or :), [list_of _columns]].copy()

也许我错了。在这种情况下,请告诉我。谢谢