날짜 범위 내에서 DataFrame 행 선택
Python에서 DataFrame은 표 형식 데이터를 저장하고 조작하기 위한 강력한 도구입니다. 일반적으로 발생하는 작업 중 하나는 지정된 날짜 범위를 기준으로 행을 필터링하는 것입니다. 이를 수행하기 위해 다음 옵션이 있습니다.
방법 1: 부울 마스크 사용
DataFrame에 datetime64[ns] 데이터 유형의 날짜 열이 포함된 경우, 원하는 범위에 속하는 행을 선택하기 위해 부울 마스크를 만들 수 있습니다. 범위:
# Ensure date column is a datetime64 series df['date'] = pd.to_datetime(df['date']) # Create a boolean mask mask = (df['date'] > start_date) & (df['date'] <= end_date) # Select the sub-DataFrame sub_df = df.loc[mask]
방법 2: DatetimeIndex 설정
또 다른 효율적인 접근 방식은 날짜 열을 DataFrame의 인덱스로 설정하여 DatetimeIndex를 생성하는 것입니다.
df = df.set_index(['date']) # Select rows using index slicing sub_df = df.loc[start_date:end_date]
이 방법은 날짜 기반 선택이 빈번한 경우에 특히 유용합니다. 부울 마스크를 사용합니다.
예:
다음 DataFrame을 고려하세요.
>>> df value date 0 0.2 2021-06-01 1 0.3 2021-06-05 2 0.4 2021-06-10 3 0.5 2021-06-15
2021년 6월에 대한 행을 선택하려면, 다음 방법 중 하나를 사용할 수 있습니다.
방법 1: 부울 마스크
mask = (df['date'] > '2021-06-01') & (df['date'] <= '2021-06-30') sub_df = df.loc[mask]
방법 2: DatetimeIndex
df = df.set_index(['date']) sub_df = df.loc['2021-06-01':'2021-06-30']
두 방법 모두 다음 하위 DataFrame을 반환합니다.
>>> sub_df value date 0 0.2 2021-06-01 1 0.3 2021-06-05 2 0.4 2021-06-10 3 0.5 2021-06-15
위 내용은 Python의 특정 날짜 범위 내에서 DataFrame 행을 효율적으로 선택하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!