Python 3.x 如何将列添加到现有的填充数据帧

Python 3.x 如何将列添加到现有的填充数据帧,python-3.x,pandas,dataframe,Python 3.x,Pandas,Dataframe,我尝试为现有数据框的新列添加值: val_df["perplexity"][10]=14 没有名为困惑的专栏,我认为这将创建该专栏。我猜也是这样,但我得到了以下错误: KeyError: 'perplexity' 由于“困惑”列尚不存在,因此无法访问特定索引(行)。因此,创建列并指定默认值,然后更新特定行的值 val_df["perplexity"] = '' val_df["perplexity"][10] = 14 编辑:正如下面@ALollz所建议的,应避免链式索引,以避免设置Wit

我尝试为现有数据框的新列添加值:

val_df["perplexity"][10]=14
没有名为困惑的专栏,我认为这将创建该专栏。我猜也是这样,但我得到了以下错误:

KeyError: 'perplexity'

由于“困惑”列尚不存在,因此无法访问特定索引(行)。因此,创建列并指定默认值,然后更新特定行的值

val_df["perplexity"] = ''
val_df["perplexity"][10] = 14
编辑:正如下面@ALollz所建议的,应避免链式索引,以避免设置WithCopy警告。建议使用以下代码

val_df.loc[10, 'perplexity'] = 14

因此,如果要添加名为“困惑”的新列,则需要指定值。这些值是什么?@DanielMesejo它们必须在循环中设置,但是我可以将默认值设置为
0
,那么我猜您只是在执行
val_df[“困惑”]=0
,然后使用for循环设置其他值。应该避免链式赋值。使用
.loc
val_df.loc[10,“困惑”]=14
你说得对,谢谢你指出这一点。我已将此添加为编辑。