1
pandas DataFrameで単純な値変更操作を実行しようとしました。データフレーム値を設定しようとしているときに "DataFrameからスライスのコピーに値が設定しようとしています"という警告が表示される
import pandas as pd
import numpy as np
x = np.linspace(1,10,10)
y = x * 2
z = [-1,-2,-3,4,5,6,7,8,9,10]
df = pd.DataFrame(columns=['x','y','z'])
df['x'] = x
df['y'] = y
df['z'] = z
for i in range(len(df['z'])):
if df['z'].iloc[i] < 0:
df['x'].iloc[i] *= -1
df['y'].iloc[i] *= -1
df['z'].iloc[i] *= -1
それは警告ししかし:SettingWithCopyWarning: 値が、私はこの場合に使用されたかを連鎖割り当て気づいていなかったDATAFRAME からのスライスのコピーに設定されてしようとしています。
それは私に正解ですが、かなり遅くなりました。
おかげ