小编Das*_*ual的帖子

复制Pandas中的行

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

   Person  ID   ZipCode   Gender
0  12345   882  38182     Female
1  32917   271  88172     Male
2  18273   552  90291     Female
Run Code Online (Sandbox Code Playgroud)

我想复制每一行3次,如:

   Person  ID   ZipCode   Gender
0  12345   882  38182     Female
0  12345   882  38182     Female
0  12345   882  38182     Female
1  32917   271  88172     Male
1  32917   271  88172     Male
1  32917   271  88172     Male
2  18273   552  90291     Female
2  18273   552  90291     Female
2  18273   552  90291     Female
Run Code Online (Sandbox Code Playgroud)

当然,重置索引所以它是:

0
1
2
Run Code Online (Sandbox Code Playgroud)

我尝试过如下解决方案:

pd.concat([df[:5]]*3, ignore_index=True)
Run Code Online (Sandbox Code Playgroud)

和:

df.reindex(np.repeat(df.index.values, df['ID']), …
Run Code Online (Sandbox Code Playgroud)

python dataset dataframe pandas

11
推荐指数
4
解决办法
8734
查看次数

如何创建具有重复值熊猫的列(不匹配的索引)

我正在尝试使用 Pandas 在我的数据框中添加一个包含一些值的新列,并让它重复相同的值,直到它到达索引的末尾:

我试过了:

df['Fruit Type']=['Bananas','Oranges','Strawberries']

它说:

ValueError: length of values does not match length of index

**我的索引大约有 8000 行,因此索引与新列值的数量不匹配

我希望该列看起来像:

Fruit Type: Bananas Oranges Strawberries Bananas Oranges Strawberries Bananas Oranges Strawberries

一段时间后我找到了解决方案:

df.insert(0, 'Fruit Type', ['Bananas', 'Oranges','Strawberries']*int(((len(df))/3)))

0 代表列号,然后是列名,然后是列值。*int... 将索引除以 3 并重复该数量的值。感谢@acai 最后的乘数

python pandas

5
推荐指数
1
解决办法
5760
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1

dataset ×1