Lúc đầu, tôi đã cố gắng viết một số mã mà trông như thế này:Pandas vẫn nhận được SettingWithCopyWarning ngay cả sau khi sử dụng .loc
import numpy as np
import pandas as pd
np.random.seed(2016)
train = pd.DataFrame(np.random.choice([np.nan, 1, 2], size=(10, 3)),
columns=['Age', 'SibSp', 'Parch'])
complete = train.dropna()
complete['AgeGt15'] = complete['Age'] > 15
Sau khi nhận được SettingWithCopyWarning, tôi đã cố gắng using.loc:
complete.loc[:, 'AgeGt15'] = complete['Age'] > 15
complete.loc[:, 'WithFamily'] = complete['SibSp'] + complete['Parch'] > 0
Tuy nhiên , Tôi vẫn nhận được cảnh báo tương tự. Đưa cái gì?
Đây là bài viết hay nhất tôi đã đọc về chủ đề này: https://www.dataquest.io/blog/settingwithcopywarning/ Nó cũng được đề cập trong tài liệu Pandas tại đây: http: //pandas.pydata .org/pandas-docs/stable/indexing.html? highlight = chain # indexing-view-versus-copy – Alexander