Dataframe 不会在 for 循环中修改
Dataframe doesn't modify in a for loop
我有这个 for 循环,我想更改 df 的一部分的值。
for col in last_df:
last_df.loc[last_df[col]!=0, col]='stop'
stop=last_df[last_df[col]=='stop'][col].index[0]
last_df[col].loc[:(stop-1)]='NaN'
最后,last_df 没有修改,我收到的错误如下:
A value is trying to be set on a copy of a slice from a DataFrame See the caveats in the documentation:....
尝试不使用 loc。
for col in last_df:
last_df[last_df[col]!=0]='stop'
stop=last_df[last_df[col]=='stop'][col].index[0]
last_df[col][:(stop-1)]='NaN'
这是 DataFrame 的视图和副本的问题,有关快速理解的更多信息,您可以阅读此 link
我有这个 for 循环,我想更改 df 的一部分的值。
for col in last_df:
last_df.loc[last_df[col]!=0, col]='stop'
stop=last_df[last_df[col]=='stop'][col].index[0]
last_df[col].loc[:(stop-1)]='NaN'
最后,last_df 没有修改,我收到的错误如下:
A value is trying to be set on a copy of a slice from a DataFrame See the caveats in the documentation:....
尝试不使用 loc。
for col in last_df:
last_df[last_df[col]!=0]='stop'
stop=last_df[last_df[col]=='stop'][col].index[0]
last_df[col][:(stop-1)]='NaN'
这是 DataFrame 的视图和副本的问题,有关快速理解的更多信息,您可以阅读此 link