본문 바로가기
파이썬

파이썬 Pandas는 부울을 사용하여 DataFrame 열을 선택합니다.

by º기록 2020. 11. 28.
반응형

부울을 사용하여 1,000 개 이상의 열이있는 데이터 프레임 comb 에서 4000 개 이상의 항목이있는 열을 선택하고 싶습니다. 이 표현식은 부울 (True / False) 결과를 제공합니다.

criteria = comb.ix[:,'c_0327':].count()>4000

새 데이터 프레임에 대한 True 열만 선택하는 데 사용하고 싶습니다.
다음은 "Unalignable boolean Series key provided"를 제공합니다.

comb.loc[criteria,]

나는 또한 시도했다 :

comb.ix[:, comb.ix[:,'c_0327':].count()>4000] 


comb.ix[:,'c_0327':].count()>4000

수율 :

c_0327    False
c_0328    False
c_0329    False
c_0330    False
c_0331    False
c_0332    False
c_0333    False
c_0334    False
c_0335    False
c_0336    False
c_0337     True
c_0338    False
.....

 

해결 방법

 

반환되는 것은 열 이름을 인덱스로 사용하고 부울 값을 행 값으로 사용하는 Series입니다.

실제로 원하는 것 같습니다.

이제 작동합니다.

comb[criteria.index[criteria]]

기본적으로 이것은 기준의 인덱스 값과 그들을 마스킹하기 위해 부울 값을 사용합니다. 이것은 열 이름의 배열을 반환합니다. 이것을 사용하여 orig df에서 관심있는 열을 선택할 수 있습니다.

 

참조 페이지 https://stackoverflow.com/questions/29281815

 

 

반응형

댓글