MultiIndex가 포함된 Pandas DataFrame이 있는 경우 특정 값을 기반으로 행을 선택하는 방법/ 각 인덱스 수준의 레이블은 무엇입니까?
df.loc[key, :]
df.xs(level_key, level=level_name, drop_level=True/False)
df.query("condition")
mask = df.index.get_level_values(level_name).isin(values_list) selected_rows = df[mask]
예 1: '1' 수준에서 특정 값을 가진 행을 선택하고 'two':
# Using loc selected_rows = df.loc[['a'], ['t', 'u']] # Using xs selected_rows = df.xs('a', level='one', drop_level=False) selected_rows = selected_rows.xs(['t', 'u'], level='two') # Using query selected_rows = df.query("one == 'a' and two.isin(['t', 'u'])") # Using get_level_values one_mask = df.index.get_level_values('one') == 'a' two_mask = df.index.get_level_values('two').isin(['t', 'u']) selected_rows = df[one_mask & two_mask]
예 2: 'two' 수준의 수치적 부등식을 기준으로 행 필터링:
# Using query selected_rows = df.query("two > 5") # Using get_level_values two_mask = df.index.get_level_values('two') > 5 selected_rows = df[two_mask]
위 내용은 Pandas MultiIndex DataFrames에서 행을 효율적으로 선택하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!