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

如何将Pandas DataFrame的w列单词按对应n列数值重复生成新数据框

实现代码

核心用Pandas内置的repeat方法即可实现,完整代码如下:

import pandas as pd

# 构造原始DataFrame
df = pd.DataFrame({'w':['foo','bar'], 'n':[3,5]})

# 按n列数值重复对应行的w列值,重置索引为连续整数
res = df.loc[df.index.repeat(df['n']), 'w'].reset_index(drop=True)

# 按要求格式打印
for i, v in res.items():
    print(i, v)

逻辑说明

  • df.index.repeat(df['n'])会生成重复后的行索引序列:[0,0,0,1,1,1,1,1],正好匹配需要的重复次数
  • 用该索引提取w列数据后,调用reset_index(drop=True)把索引重置为从0开始的连续序号,和需要的输出序号完全对应
  • 运行后输出结果和示例完全一致:
0 foo
1 foo
2 foo
3 bar
4 bar
5 bar
6 bar
7 bar
8 bar

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 00:24:03