猿问

在熊猫中每 n 行添加一行随机数

这是我的数据帧。


A | B | C | D

0   4   8   9

1   5   8   9

2   6   8   9

3   7   8   9

我想每隔一行添加一个随机数,所以它看起来像那样。


A | B | C | D

0   4   8   9

1   5   8   9

596 596 596 596

2   6   8   9

3   7   8   9

123 123 123 123

由于 PiR 平方,来自另一个问题的以下代码,每第二行添加零。如何修改它以每隔一行添加一个随机数或增加前一个随机数,例如。


A | B | C | D

a   a   a   a

b   b   b   b

0   0   0   0

c   c   c   c

d   d   d   d

1   1   1   1

在这里你可以看到,它从 0 开始,然后在下一行增加到 1


此代码从其他 StackOverflow 问题中每隔一行添加零


s = pd.Series(0, df.columns)

f = lambda d: d.append(s, ignore_index=True)


grp = np.arange(len(df)) // 2

df= df.groupby(grp, group_keys=False).apply(f).reset_index(drop=True)


蛊毒传说
浏览 147回答 1
1回答

长风秋雁

将您的 lambda 函数更改为,根据您的要求更改范围randint:f = lambda d: d.append(pd.Series(np.random.randint(0,1000,size=1).repeat(4), df.columns), ignore_index=True)要么:f = lambda d: d.append(pd.Series(np.random.randint(0,1000,size=1).tolist()[0], df.columns), ignore_index=True)
随时随地看视频慕课网APP

相关分类

Python
我要回答