Pandas-KeyError as列在输出中不存在

问题描述

我希望最终的DataFrame具有以下结构:

col_a,col_b,col_c,col_d,col_e

但是,基于从API提取的数据,我看到下面的列包含数据

col_a,col_d

这将导致Keyerror,因为col_bcol_e不在从API获取的数据中。如果没有基于从API获得的数据的可用数据,是否有一种方法可以创建空列。

解决方法

如果添加了某些缺少的列,默认情况下会使用缺少的值来填充列表中所有预期的列名称,请使用DataFrame.reindex

print (df)
   col_a  col_c  col_d
0      1      2      3

expected = ['col_a','col_b','col_c','col_d','col_e']
df = df.reindex(expected,axis=1)
print (df)
   col_a  col_b  col_c  col_d  col_e
0      1    NaN      2      3    NaN

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...