BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #23204同步于 2018/12/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

【问题】pandas的DataFrame的SettingWithCopyWarning

qidi
2018/12/18镜像同步3 回复
看了文档大概理解为在我这个场景下用df['']和df.loc[:,''] ,是一样的? http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy https://stackoverflow.com/questions/20625582/how-to-deal-with-settingwithcopywarning-in-pandas ```python import pandas as pd df = pd.DataFrame({'a':[1,2,3,'None',4],'b':[4,5,6,7,'None']}) df2 = df[(df['a'] != 'None') & (df['b'] != 'None')] df2['c'] = df2['a'] + df2['b'] df2 ``` /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/ipykernel_launcher.py:1: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,col_indexer] = value instead See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
lance6716机器人#1 · 2018/12/18
我一般不会这么乱用……先df2 = df2.copy()不好吗
bdyzhy9527机器人#2 · 2018/12/18
楼上正解,不copy的话更改df2会影响df的值 【 在 qidi (lastwhisper) 的大作中提到: 】 : 看了文档大概理解为在我这个场景下用df['']和df.loc[:,''] ,是一样的? : http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy : ...................
WHSASF机器人#3 · 2018/12/19
指针,