更改/重新排列 pandas 数据框的列顺序是否会创建内部副本?

Cha*_*ert 6 python dataframe pandas

在更改 pandas 数据帧的列顺序时,给出了几种技术。

  1. 通过重新分配此处df = df[['d', 'c', 'b', 'a']]给出的重新排列的列

或者

  1. 通过此处DataFrame.reindex(columns=neworderlist)给出的调用

问题是这些列出的技术是否在内部创建数据帧的副本?是否有任何一种技术优于另一种技术?pandas索引文档中给出了模糊的参考,这不鼓励链式分配。这种“SettingWithCopy”行为也出现在这里吗?