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

如何拼接DataFrame与Series并生成指定格式的单行DataFrame?

Pandas:将Series转为指定列名的单行DataFrame

问题描述

我想了解如何将DataFrame与Series进行拼接,尝试执行了以下代码:

df_columns = ['A', 'B', 'C', 'D']
df_series = pd.Series([1,2,3,'N/A'],index = df_columns)
df = pd.DataFrame(df_series)
df 

运行后得到如下输出:

A  1
B  2
C  3
D  'N/A'

请问如何修改代码,使输出为以下格式,且df_columns仍为DataFrame的列名:

A  B  C  D
1  2  3  'N/A'

解决方法

以下几种方法都能实现需求:

方法1:转置Series生成的DataFrame

先将Series转为DataFrame,再通过.T转置,让原Series的索引成为列名,值变为单行数据:

import pandas as pd

df_columns = ['A', 'B', 'C', 'D']
df_series = pd.Series([1,2,3,'N/A'], index=df_columns)
df = df_series.to_frame().T
print(df)

方法2:直接基于Series值创建DataFrame

用Series的values属性获取数据,以列表形式传入pd.DataFrame,同时指定columns参数为df_columns:

import pandas as pd

df_columns = ['A', 'B', 'C', 'D']
df_series = pd.Series([1,2,3,'N/A'], index=df_columns)
df = pd.DataFrame([df_series.values], columns=df_columns)
print(df)

方法3:通过字典创建DataFrame

将Series转为字典,再用pd.DataFrame.from_dict方法,设置orient='columns'来指定列名来源:

import pandas as pd

df_columns = ['A', 'B', 'C', 'D']
df_series = pd.Series([1,2,3,'N/A'], index=df_columns)
df = pd.DataFrame.from_dict(df_series.to_dict(), orient='columns')
print(df)

以上三种方法运行后都会输出你需要的格式,且df_columns会作为DataFrame的列名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 15:06:16