>new_dat=dat_corr.merge(dat_class,on="Asset",how="right").set_index(['Country','Class','Asset'])
>new_dat.shape
(89, 89)
>temp1='UNITEDSTATES'
>temp2='Equity'
>new_dat.loc[ (new_dat.index.get_level_values('Country').isin([temp1]) & new_dat.index.get_level_values('Class').isin([temp2]))]'
>new_dat.columns=new_dat.index
마지막 줄에 나에게 [3 행 x 89 열]이 있습니다. 내 89 열은 주식/FX/FI/상품의 혼합입니다. 만약 내가 미국 공평 vs 다른 모든 주식과 enitre 89 칼럼을 원한다면 어떻게해야합니까? 또한 열에 다중 색인을 추가했습니다.팬더 멀티 인덱스 데이터 프레임의 서브 세트를 추출하십시오.
나라 미국 에선 캐나다 \ 클래스 주식 자본
자산 DJ1Index SP1Index ND1Index : 문제는 내가 아래 을 필터링하는 데이터의 일부분임을 어떻게 사용합니까 두 행과 열을 따라 다중 인덱스를 가지고 지금 PT1Index
나라 클래스 자산
미국 에선 주식 DJ1Index 1.000000 0.958038 0.747192 0.648373
SP1Index 0.958038 1.000000 0.825458 0.717545
ND1Index 0.747192 0.825458 1.000000 0.612487
,691 363,210 캐나다 주식 PT1Index 0.648373 0.717545 0.612487 1.000000
멕시코 주식 IS1Index 0.622570 0.664499 0.565702 0.575618
나라 멕시코 브라질 독일 영국 \ 클래스 주식 주식 주식 주식
자산 IS1Index BZ1Index VG1Index Z1Index
나라 클래스 자산
미국 에선 주식 DJ1Index 0.622570 0.523704 0.566993 0.520526
SP1 인덱스 0.664499 0.565941 0.587933 0.539138
ND1Index 0.565702 0.484441 0.458135 0.391391
012 3,516,캐나다 주식 PT1Index 0.575618 0.526663 0.499343 0.493260
멕시코 주식 IS1Index 1.000000 0.577041 0.502558 0.487487
응답 해 주셔서 감사합니다. 그러나 그것은 제가 원했던 것을 성취하는 데 도움이되지 않습니다. 나는 그 질문을 갱신했다. – user2819398
죄송합니다.이 질문에서 나에게 명확하지 않았습니다. 위의 정보를 추가했습니다. 희망이 도움이됩니다. – Primer
> new_dat1 = new_dat.loc [ (new_dat.index.get_level_values ('국가). | SIN ([TEMP1]) 및 new_dat.index.get_level_values ("클래스"). | SIN ([이 TEMP2]))] > new_dat2 = new_dat1.xs (temp3, level = '국가', 축 = 1, drop_level = 거짓) > final_dat = new_dat2.xs (temp4, level = '클래스', 축 = 1, drop_level = 거짓) multiindex (행과 열)를 필터링하는 데 사용됩니다. – user2819398