如何使用未显示的列名称填充结果文件?

How to fill result file with not presented columns names?

我将结果 output datafrate 写入文件:

for key, columns in formats.items():
  output.to_csv('c:/temp/'+filenameshort+'_shopformat_'+key+'.csv', columns=columns, encoding='utf-8', sep="|", index=False, header=False)

其中 formats 是:

formats = {
    "kids": ['NUM', 'MMYY', 'FIRSTNAME', 'ADDRESS', 'EMAIL']
}

问题是数据框 output 没有 formats.kids 中的所有列。它给我一个错误:

KeyError: "['ADDRESS'] not in index"

如何创建包含 formats.kids 中所有列的文件?

output有:

NUM AGE MMYY

结果应该是:

 NUM AGE MMYY FIRSTNAME ADDRESS EMAIL
 1    18  1212

IIUYC,你想在你的 df 中添加空列,你可以试试:

for key, columns in formats.items():
    for col in columns:
        if col not in output.columns:
            output[col]=np.nan
    output.to_csv('c:/temp/'+filenameshort+'_shopformat_'+key+'.csv', columns=columns, encoding='utf-8', sep="|", index=False, header=False)