관리 메뉴

이모저모

인덱스 무작위 선택 본문

코딩공부/파이썬

인덱스 무작위 선택

bhoon 2024. 1. 4. 23:14

1. np.random.choice(), df.index.isin() 

DataFrame에서 무작위로 인덱스를 선택하고 선택된 인덱스를 반환하는 코드이다.

(추가로 선택된 인덱스를 제외한 DataFrame을 반환하는 코드도 추가하였다.)

 

# 인덱스 무작위 선택
idx = np.random.choice(basic_df.index, size=int(len(basic_df) * 0.5), replace=False)

# .loc를 사용하여 특정 행 선택
selected_rows = basic_df.loc[idx].reset_index(drop = True)

# 선택한 인덱스를 제외한 나머지 행 추출
df_excluded = basic_df.loc[~basic_df.index.isin(idx)]

display(len(basic_df))
display(len(selected_rows))
display(len(df_excluded))

#실행결과
#5823
#2911
#2912

 

 

지금 같은 경우에 0.5를 전체 데이터프레임 길이에 곱하여 데이터 프레임을 반반 나누었다고 볼 수 있다.

Size가 float이면 안되니 int로 전환한다.