熊猫数据框中每一行的随机值

Zep*_*hyr 1 python random dataframe pandas

嗨,我有以下数据框:

import numpy as np
import pandas as pd
df = pd.DataFrame()
df['T1'] = ['A','B','C','D','E']
df['T2'] = ['G','H','I','J','K']
df['Match'] = df['T1'] +' Vs '+ df['T2']
Nsims = 5
df1 = pd.DataFrame((pd.np.tile(df,(Nsims,1))))
Run Code Online (Sandbox Code Playgroud)

我通过对五个随机数求和创建了两个新列T1_pointT2_point。当我如下时:它给我所有行相同的数字。

Ninit = 5
df1['T1_point'] = np.sum(np.random.uniform(size=Ninit))
df1['T2_point'] = np.sum(np.random.uniform(size=Ninit))
Run Code Online (Sandbox Code Playgroud)

我想做的是,我想通过使用随机数为每一行获取不同的值。

我该怎么办?

谢谢

齐普

ajs*_*jsp 5

您基本上要问的是每行中都有一个随机数。只需创建一个随机数列表,然后将其附加到您的数据框?

import random

df1['RAND'] = [ random.randint(1,10000000)  for k in df1.index]

print df1

    0  1     RAND
0   A  G  6850189
1   B  H  3692984
2   C  I  8062507
3   D  J  6156287
4   E  K  7037728
5   A  G  7641046
6   B  H  1884503
7   C  I  7887030
8   D  J  4089507
9   E  K  4253742
10  A  G  8947290
11  B  H  8634259
12  C  I  7172269
13  D  J  4906697
14  E  K  7040624
15  A  G  4702362
16  B  H  5267067
17  C  I  3282320
18  D  J  6185152
19  E  K  9335186
20  A  G  3448703
21  B  H  6039862
22  C  I  9884632
23  D  J  4846228
24  E  K  5510052
Run Code Online (Sandbox Code Playgroud)