Pandas DataFrame DataFrame.sample() Funktion
-
Syntax von
pandas.DataFrame.sample()
-
Beispiel-Codes:
DataFrame.sample()
-
Beispielcodes:
DataFrame.sample()
zum Extrahieren der Spalten -
Beispielcodes:
DataFrame.sample()
zur Generierung einer Datenfraktion -
Beispielcodes:
DataFrame.sample()
zum Überabtasten des DataFrame -
Beispiel-Codes:
DataFrame.sample()
MitGewichten
Die Funktion Python Pandas DataFrame.sample()
erzeugt eine Stichprobe einer zufälligen Zeile oder Spalte aus einem DataFrame
. Die Stichprobe kann mehr als eine Zeile oder Spalte enthalten.
Syntax von pandas.DataFrame.sample()
DataFrame.sample(
n=None, frac=None, replace=False, weights=None, random_state=None, axis=None
)
Parameter
n |
Es ist ein Ganzzahl. Er repräsentiert die Zufallszahl der Zeilen oder Spalten, die aus dem DataFrame ausgewählt werden sollen. |
frac |
Es ist ein Float -Wert. Er gibt den Prozentsatz der zufälligen Zeilen oder Spalten an, die aus dem DataFrame extrahiert werden sollen. Zum Beispiel bedeutet frac=0.45 , daß die zufällig ausgewählten Zeilen oder Spalten 45% der Originaldaten ausmachen. |
replace |
Es ist ein Boolean -Wert. Wenn er auf True gesetzt ist, gibt er die Probe mit der Ersetzung von Daten zurück. |
weights |
Es ist eine Zeichenkette oder eine N-dimensionale array -ähnliche Struktur. Wenn sie auf einem DataFrame aufgerufen wird, akzeptiert sie den Namen einer Spalte, wenn die Achse 0 ist. Die Zeilen mit größeren Werten in der Gewichtungsspalte werden mit größerer Wahrscheinlichkeit als die Beispieldaten zurückgegeben. |
random_state |
Es ist eine ganzzahlige oder numpy.random.RandomState Funktion. Wenn es eine Ganzzahl ist, dann gibt sie die gleiche Anzahl von Zeilen oder Spalten in jeder Iteration zurück. Andernfalls gibt sie ein numpy.random.RandomState -Objekt zurück. |
axis |
Es ist eine Ganzzahl oder eine Zeichenkette. Er sagt über die Zielachse entweder Zeilen oder Spalten aus. Er kann 0 oder index und 1 oder column sein. |
Zurück
Es gibt eine Series
oder einen Dataframe
zurück. Die zurückgegebene Series
oder der Dataframe
ist ein Aufrufer, der n zufällig aus dem ursprünglichen Dataframe
ausgewählte Elemente enthält.
Beispiel-Codes: DataFrame.sample()
Standardmäßig gibt die Funktion eine Probe zurück, die Zeilen enthält, d.h. axis=1
.
import pandas as pd
dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 75, 4: 95},
'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
'Obtained Marks': {0: 56, 1: 75, 2: 82, 3: 64, 4: 67}})
print(dataframe)
Unser DataFrame
sieht folgendermaßen aus:
Attendance Name Obtained Marks
0 60 Olivia 56
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
Alle Parameter dieser Funktion sind optional. Wenn wir diese Funktion ausführen, ohne einen Parameter zu übergeben, gibt sie eine einzelne zufällige Zeile als Ausgabe zurück.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.sample()
print(dataframe1)
Ausgabe1:
Attendance Name Obtained Marks
3 75 Ben 64
Ausgabe2:
Attendance Name Obtained Marks
4 95 Kevin 67
Ausgang1 und Ausgang2 zeigen zweimal die Ausführung desselben Programms. Jedesmal erzeugt diese Funktion eine Zufallsstichprobe von Zeilen aus dem gegebenen DataFrame
.
Beispielcodes: DataFrame.sample()
zum Extrahieren der Spalten
Um Säulen in einer Probe zu erzeugen, ändern wir einfach unsere Achse auf 1.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.sample(n=1, axis=1)
print(dataframe1)
Ausgabe:
Name
0 Olivia
1 John
2 Laura
3 Ben
4 Kevin
Die Funktion hat als Ausgabe eine Probe einer einzelnen Spalte erzeugt. Die Anzahl der Spalten wurde durch den Parameter n=1
festgelegt.
Beispielcodes: DataFrame.sample()
zur Generierung einer Datenfraktion
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.sample(frac=0.5)
print(dataframe1)
Ausgabe:
Attendance Name Obtained Marks
3 75 Ben 64
4 95 Kevin 67
1 100 John 75
Die zurückgegebene Probe entspricht 50% der Originaldaten.
Beispielcodes: DataFrame.sample()
zum Überabtasten des DataFrame
Wenn frac>1
, dann sollte der Parameter replace
True
sein, damit die gleiche Zeile mehr als einmal abgetastet werden kann; andernfalls wird ein ValueError
ausgegeben.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.sample(frac=1.5, replace=True)
print(dataframe1)
Ausgabe:
Attendance Name Obtained Marks
3 75 Ben 64
0 60 Olivia 56
1 100 John 75
2 80 Laura 82
1 100 John 75
2 80 Laura 82
0 60 Olivia 56
4 95 Kevin 67
Wenn der Parameter replace
auf False
gesetzt ist, während frac
größer als 1 ist, dann wird ein ValueError
ausgegeben.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.sample(frac=1.5, replace=False)
print(dataframe1)
Ausgabe:
Traceback (most recent call last):
File "..\test.py", line 6, in <module>
dataframe1 = dataframe.sample(frac=1.5, replace=False)
File "..\lib\site-packages\pandas\core\generic.py", line 5044, in sample
raise ValueError(
ValueError: Replace has to be set to `True` when upsampling the population `frac` > 1.
Beispiel-Codes: DataFrame.sample()
Mit Gewichten
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.sample(n=2, weights="Attendance")
print(dataframe1)
Ausgabe:
Attendance Name Obtained Marks
1 100 John 75
4 95 Kevin 67
Hier werden in der zurückgegebenen Stichprobe die Zeilen mit größeren Werten in der Spalte Attendance
ausgewählt.