は、以下の例を参照してください。関数が外部のオブジェクトを変更するのはなぜですか?
def func(arg):
print(id(arg))
df = pd.DataFrame(arg)
print(id(df))
df['b'] = [4,5,6]
a = pd.DataFrame({'a' : [1,2,3]})
print(a, id(a))
func(a)
print(a)
a
0 1
1 2
2 3
681924702104
681924702104
681924718944
a b
0 1 4
1 2 5
2 3 6
なぜ関数を呼び出した後に変更?私は特に彼らはすべての異なるIDを持っているので、それを得ることはありません。これを修正する正しい手続きは何でしょうか?
'df = pd.DataFrame(arg); df ['b'] = [4,5,6] 'modify' arg'?私はそのクラスに精通していません。 – Carcigenicate
わかりませんが、1:新しい「DataFrame」オブジェクトを作成しましたが、元のデータを変更するようです。 –