-1
我最近看到这样的代码中使用pandas.DataFrame.copy():为什么列提取
import pandas as pd
data = pd.read_csv('/path/to/some/data.csv')
colX = data['colX'].copy()
data.drop(labels=['colX'], inplace=True, axis=1)
我知道,使对象的显式副本,我需要copy()
,但在这种情况下,当提取并随后删除一个列表时,是否有充分理由使用copy()
?在评论
嗯,我们不知道这里的意图,用户可能希望该列的不同副本,然后从原来的DF删除列,以便他们可以自由地在该列只是操作不影响原DF – EdChum
但,原始数据框如何被影响,如果列被从中删除? –
我在说的是,用户可能希望将该列与主df分开,当然如果用户只是想删除该列,然后采取副本毫无意义,如果他们的目的是要删除该列,但对于实例他们没有采取副本,而是采取了引用,那么对该列的操作可能会或可能不会影响原始df,如果你没有删除它。这里的要点是这里没有用户意图的上下文或指示 – EdChum