试图复制pandas数据帧中的特定行



我试图在一个特定索引行中复制一个值,并在数据帧中的原始行下面插入这个新的复制行。

我有以下代码:

indexnumber = random.randrange(datafile.shape[0])
newdf = pd.DataFrame(np.repeat(datafile.iloc[indexnumber].values, 2, axis=0))
print(newdf)

我想随机选择一个反应时间,并将其复制到原始项目旁边,这样,如果列表是[2,3,4],随机数是1,则生成的列表应该是[2,3,3,4]。

如果有任何帮助,我将不胜感激!

数据文件数据帧的前10行:

print(datafile.head(10))
0
0  307
1  209
2  371
3  266
4  372
5  298
6  338
7  302
8  264
9  247

您可以将Index.repeat与自定义阵列一起用作中继器:

# set up repeater array with 1s
n = np.ones(len(df))
# pick one random value to be 2
n[np.random.randint(0, len(df))] = 2
# reindex
out = df.loc[df.index.repeat(n)]

示例输出:

0
0  307
1  209
2  371
3  266  # duplicated
3  266  #
4  372
5  298
6  338
7  302
8  264
9  247

相关内容

最新更新