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

如何将Pandas DataFrame指定列的行数据移动为前序列的新行

Pandas 行数据迁移实现方案

针对性实现(适配你当前的2行6列场景)

直接操作指定位置的单元格值即可,代码如下:

# 提取第一行后3列的目标值
target_vals = df.loc[0, [3,4,5]].tolist()
# 替换第二行前3列的值
df.loc[1, ['data', 'user', 'file']] = target_vals
# 将第一行后3列的值统一替换为 row
df.loc[0, [3,4,5]] = ['row'] * 3
  • 运行后第一行:data/user/file列保留dataa_1/user_1/file_1,剩余列全部为row
  • 运行后第二行:data/user/file列更新为dataa_2/user_2/file_2,剩余列保留原有row值

通用实现(适配任意长度的列扩展场景)

如果后续你的DataFrame列数持续增加,且第一行数据按每3列一组要拆分为多行,可以用批量处理逻辑:

group_len = 3
# 按3个为一组拆分第一行所有值
row_groups = [df.loc[0].tolist()[i:i+group_len] for i in range(0, len(df.columns), group_len)]
# 用拆分后的分组生成新DataFrame
new_df = pd.DataFrame(row_groups, columns=['data', 'user', 'file'])
# 剩余列统一填充 row
for col_idx in range(group_len, len(df.columns)):
    new_df[col_idx] = 'row'
# 替换原有DataFrame
df = new_df

该逻辑不需要手动指定列编号,会自动按每3列一组生成对应行数,适配列数动态增长的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 11:39:05