能否使用concat方法将字典拼接至空Pandas DataFrame?
问题原因分析
你使用的方法存在错误,目标功能完全可以实现。pd.concat()仅支持拼接Series、DataFrame类型的pandas对象,你直接传入Python原生字典作为拼接参数,不符合方法的参数要求,因此触发类型报错。
正确实现方案
你只需要先将字典转为DataFrame对象,再执行拼接操作即可,示例代码如下:
import pandas as pd data = {'age':{'sam': 1, 'rye': 3, 'lori':8, 'chris':11, 'sara':3}} df = pd.DataFrame() # 先将字典转换为DataFrame再拼接 add_df = pd.DataFrame(data) df = pd.concat([df, add_df])
运行后得到的df结构如下:
| age | |
|---|---|
| sam | 1 |
| rye | 3 |
| lori | 8 |
| chris | 11 |
| sara | 3 |
如果你只是需要生成上述结构的DataFrame,不需要走先建空表再拼接的流程,直接用df = pd.DataFrame(data)一行代码即可得到目标结果。
内容的提问来源于stack exchange,提问作者newbzzs
相关产品推荐
相关产品推荐

