Pandas: 교체를 통해 행을 샘플링하는 방법


pandas 샘플() 함수에서 replacement=True 인수를 사용하여 대체를 통해 DataFrame에서 행을 무작위로 샘플링할 수 있습니다.

 #randomly select n rows with repeats allowed
df. sample (n= 5 , replace= True ) 

replacement=True를 사용하면 동일한 행이 샘플에 여러 번 포함될 수 있습니다.

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: Pandas에서 대체 줄의 예

다양한 농구 선수에 대한 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정합니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})
                   
#view DataFrame
print (df)

  team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 D 14 9 6
4 E 14 12 6
5 F 11 9 5
6 G 20 9 9
7:28 4 12

샘플() 함수를 사용하여 행 샘플을 무작위로 선택한다고 가정합니다.

 #randomly select 6 rows from DataFrame (without replacement)
df. sample (n= 6 , random_state= 0 )

        team points assists rebounds
6 G 20 9 9
2 C 19 7 10
1 B 22 7 8
7:28 4 12
3 D 14 9 6
0 A 18 5 11

DataFrame에서는 6개의 행이 선택되었으며 샘플에서는 어떤 행도 여러 번 표시되지 않습니다.

참고 : random_state=0 인수는 이 예제가 재현 가능함을 보장합니다.

이제 교체할 행의 무작위 샘플을 선택하기 위해 교체=True 인수를 사용한다고 가정합니다.

 #randomly select 6 rows from DataFrame (with replacement)
df. sample (n= 6 , replace= True , random_state= 0 )

        team points assists rebounds
4 E 14 12 6
7:28 4 12
5 F 11 9 5
0 A 18 5 11
3 D 14 9 6
3 D 14 9 6

팀 “D”가 포함된 줄이 여러 번 나타납니다.

replacement=True 인수를 사용하면 동일한 행이 샘플에 여러 번 나타날 수 있습니다.

또한 frac 인수를 사용하여 샘플에 포함할 DataFrame의 무작위 부분을 선택할 수도 있습니다.

예를 들어 다음 예에서는 대체 샘플에 포함할 행의 75%를 선택하는 방법을 보여줍니다.

 #randomly select 75% of rows (with replacement)
df. sample (frac= 0.75 , replace= True , random_state= 0 ) 

        team points assists rebounds
4 E 14 12 6
7:28 4 12
5 F 11 9 5
0 A 18 5 11
3 D 14 9 6
3 D 14 9 6

라인 수의 75%(8개 중 6개)가 샘플에 포함되었으며 라인 중 적어도 하나(팀 “D” 포함)가 샘플에 두 번 나타났습니다.

참고 : 여기에서 pandas 샘플() 함수에 대한 전체 문서를 찾을 수 있습니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 샘플링 방법을 수행하는 방법을 설명합니다.

Pandas에서 계층화된 샘플링을 수행하는 방법
Pandas에서 클러스터 샘플링을 수행하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다