You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas将多字典列表转为单行DataFrame并合并含NaN的行?

解决方法

这里有几种简单的方式实现你的需求:

方法1:合并字典后转DataFrame

先把列表里的所有字典合并成一个完整的字典,再用这个字典创建单行DataFrame,这是最直接的方式:

import pandas as pd
data = [{"A":1}, {"B":2}, {"C":3}]

# 合并所有字典
merged_data = {}
for d in data:
    merged_data.update(d)

# 创建单行DataFrame
df = pd.DataFrame([merged_data])
print(df.to_string(index=False))

输出:

A  B  C
   1  2  3

方法2:利用pandas的填充+取行

针对你已经生成的多行带NaN的DataFrame,可以用前向填充(ffill)把NaN值补上,然后取最后一行:

import pandas as pd
data = [{"A":1}, {"B":2}, {"C":3}]
df = pd.DataFrame(data)

# 填充NaN并取最后一行转为单行DataFrame
df = df.ffill().iloc[-1:]
print(df.to_string(index=False))

输出和上面一致。

方法3:用Series拼接转置

把每个字典转成Series,拼接后转置成单行DataFrame:

import pandas as pd
data = [{"A":1}, {"B":2}, {"C":3}]

df = pd.concat([pd.Series(d) for d in data]).to_frame().T
print(df.to_string(index=False))

同样能得到你要的结果。


内容的提问来源于stack exchange,提问作者Bera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 18:22:08