讓我們假設一個我有一個簡單的數據幀df
而任何東西的dataframe
熊貓數據框存在於方法之外。爲什麼
def alterDF(df):
df1['new column'] = df['some column'] + x
return df1
在上述方法中我修改整個column
爲x並將其保存到一個新的變量名的簡單方法。在內部的方法! 但是,當我檢查我的原始數據幀(即DF)時,我看到它也有新的列添加到它...
我知道我創建的原始dataframe
存在的方法之外。但我希望方法內部發生的任何更改都應保留在那裏,除非通過我的方法中的return
塊保存更改。
但是,我知道我錯了......這些更改也適用於我的方法,也出現在我的方法之外。怎麼會這樣?這是爲什麼?
,(幾乎)一切都是通過逐引用_unless_你明確地改變引用(通過'name = new_reference')。 –