둘 이상의 열에 대해 get_level_values
의 결과를 얻는 방법이 있습니까?여러 열에 대한 팬더 get_level_values
주어진 DataFrame
다음
[(1, 10), (1, 11), (1, 12), (2, 13), (2, 14), (3, 15)]
참고 :
d
a b c
1 4 10 16
11 17
5 12 18
2 5 13 19
6 14 20
3 7 15 21
나는 수준 a
및 c
의 값 (튜플 즉 목록)을 얻을하고자하는
get_level_values
하나 이상의 레벨 ()을 지정하는 것은 불가능합니다. 예를 들어
:
a_list = df.index.get_level_values('a').values
c_list = df.index.get_level_values('c').values
print([i for i in zip(a_list,c_list)])
[(1, 10), (1, 11), (1, 12), (2, 13), (2, 14), (3, 15)]
하지만이 숫자로 성가신 일이 원하는 각 컬럼을 통해 get_level_values
를 사용하고 zip
을 함께 할 수있는 해결 방법이있다df.index.get_level_values(['a','c']
)
증가합니다.
- 예
DataFrame
를 구축 할 수있는 코드 : 당신은 당신이 선택하려는 인덱스 이름의 목록을 통과 할 수
df = pd.DataFrame({'a':[1,1,1,2,2,3],'b':[4,4,5,5,6,7,],'c':[10,11,12,13,14,15], 'd':[16,17,18,19,20,21]}).set_index(['a','b','c'])
니스 사용을 할 수 마지막 경우 :) – IanS