如何复制Pandas DataFrame的行?

10 浏览
0 Comments

如何复制Pandas DataFrame的行?

我的pandas数据框看起来像这样:

   人员   ID   邮编   性别
0  12345   882  38182     女性
1  32917   271  88172     男性
2  18273   552  90291     女性

我想要复制每一行3次,并重置索引以得到:

   人员   ID   邮编   性别
0  12345   882  38182     女性
1  12345   882  38182     女性
2  12345   882  38182     女性
3  32917   271  88172     男性
4  32917   271  88172     男性
5  32917   271  88172     男性
6  18273   552  90291     女性
7  18273   552  90291     女性
8  18273   552  90291     女性

我尝试过以下解决方案:

pd.concat([df[:5]]*3, ignore_index=True)

和:

df.reindex(np.repeat(df.index.values, df['ID']), method='ffill')

但是它们都没有起作用。

0