it-swarm.com.de

Wie erstelle ich mit Pandas einen DataFrame aus zufälligen ganzen Zahlen?

Ich weiß, dass wenn ich randn benutze,

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(100, 4), columns=list('ABCD'))

gibt mir was ich suche, aber mit elementen aus einer normalverteilung. Aber was ist, wenn ich nur zufällige ganze Zahlen haben wollte?

randint gibt einen Bereich an, aber kein Array wie randn. Wie mache ich das mit zufälligen ganzen Zahlen zwischen einem Bereich?

87
AlanH

numpy.random.randint akzeptiert ein drittes Argument (size), in dem Sie die Größe des Ausgabearrays angeben können. Sie können dies verwenden, um Ihr DataFrame zu erstellen -

df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))

Hier - np.random.randint(0,100,size=(100, 4)) - erstellt ein Ausgabearray der Größe (100,4) Mit zufälligen Ganzzahlelementen zwischen [0,100).


Demo -

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))

welche produziert:

     A   B   C   D
0   45  88  44  92
1   62  34   2  86
2   85  65  11  31
3   74  43  42  56
4   90  38  34  93
5    0  94  45  10
6   58  23  23  60
..  ..  ..  ..  ..
128
Anand S Kumar