如何根据同一 pandas 数据框中的列值复制行
How to replicate rows based on value of a column in same pandas dataframe
我需要进行一些行复制。
我有一个看起来像这样的数据框:
label
count
HA1
5
HA2
3
HA3
1
HA4
4
我要做的是按 'count' 列中的数字复制每一行。所以输出应该是这样的:
老实说,我不是编码员,所以我想在一个更大的数据集上做这个。希望从这个社区得到一些想法。
谢谢。
-Big_Ears
试试 reindex
+ repeat
out = df.reindex(df.index.repeat(df['count']))
使用 df.values
的替代方法
import pandas as pd
out = pd.DataFrame(df.values.repeat(df['count'], axis=0), columns=df.columns)
我需要进行一些行复制。 我有一个看起来像这样的数据框:
label | count |
---|---|
HA1 | 5 |
HA2 | 3 |
HA3 | 1 |
HA4 | 4 |
我要做的是按 'count' 列中的数字复制每一行。所以输出应该是这样的:
老实说,我不是编码员,所以我想在一个更大的数据集上做这个。希望从这个社区得到一些想法。
谢谢。
-Big_Ears
试试 reindex
+ repeat
out = df.reindex(df.index.repeat(df['count']))
使用 df.values
的替代方法import pandas as pd
out = pd.DataFrame(df.values.repeat(df['count'], axis=0), columns=df.columns)