警告:...... SettingWithCopyWarning不明白

时间:2017-12-19 12:21:02

标签: python pandas python-3.6

你好,

我的代码Python 3有问题。我想在单元数据帧中复制tupple。 Python返回警告消息... SettingWithCopyWarning ...

data={'Debut': ['19/12/2016','18/1/2017','13/2/2017','10/3/2017']}
df=pd.DataFrame(data,columns=['Début'],index=['P1','P2','P3','P4'])
d=data['Début'][0]
d=d.split("/")
d.reverse()
d= tuple(list(map(int,d)))
df.Début[i]=d
我读了熊猫文档。我尝试这个...但python返回错误...(设置迭代时必须具有相等的len键和值)。
df.loc[0,'Début']=d
其他方式......没有工作,它也是同样的错误。
df.at[0,'Début']=d

1 个答案:

答案 0 :(得分:0)

正如所指出的,存在一个问题,即您的数据帧已经在使用数据字典的副本作为数据,因此复制数据存在问题。在将数据放入数据框之前,可以通过以所需方式处理数据来避免这种情况。例如:

import pandas as pd

data={'Debut': ['19/12/2016','18/1/2017','13/2/2017','10/3/2017']}
df = pd.DataFrame(data, columns = ['Début'], index = ['P1','P2','P3','P4'])
# Split your data, make a tuple out of it, and reverse it in a list iteration
date_tuples = [tuple(map(int, i.split("/")))[::-1] for i in data['Debut']]
df['Début'] = date_tuples