728x90

 

SettingWithCopyWarning 경고가 계속 발생할 때 해결방안

 

1) Dataframe의 slice를 복사 후 사용한다.

  # df = df[(df.A > 10) & (df.B < 5)] 아래 구분으로 변경한다.
  df = df[(df.A > 10) & (df.B < 5)].copy()
  df['1/PER'] = 1 / df['PER']

2) 경고를 끈다

import pandas as pd

# 경고를 끈다 (기본값: 'warn')
pd.set_option('mode.chained_assignment',  None)

# 중략...
df = df[(df.A > 10) & (df.B < 5)]
df['1/PER'] = 1 / df['PER']

 

end.

728x90
Posted by 하루y