Pandas의 열 값을 기준으로 DataFrame 분할
데이터 분석에서 DataFrame을 여러 개로 나누어야 하는 상황에 자주 직면합니다. 특정 열 값을 기반으로 하는 DataFrame입니다. 그러한 경우 중 하나는 DataFrame을 두 부분으로 분할하려는 경우입니다. 하나는 특정 임계값보다 낮은 값을 가진 행을 포함하고 다른 하나는 해당 임계값보다 높거나 같은 값을 가진 행을 포함합니다.
Pandas에서는 이를 수행할 수 있습니다. 부울 인덱싱을 사용하여 분할합니다. 예를 들어 이 분할을 달성하는 방법은 다음과 같습니다.
'Sales'라는 열이 있는 다음 DataFrame을 고려하세요.
df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]}) print (df) A Sales 0 3 10 1 4 20 2 7 30 3 6 40 4 1 50
판매 가치 30을 기준으로 이 DataFrame을 두 개로 분할하고 싶다고 가정합니다.
직접 비교로 분할:
가장 간단한 방법은 부울 인덱싱 연산자 '>='를 사용하여 직접 비교하는 것입니다:
s = 30
df1 = df[df['Sales'] >= s]
print (df1)
A Sales
2 7 30
3 6 40
4 1 50
이렇게 하면 Sales 값이 30보다 크거나 같은 모든 행을 포함하는 df1이라는 새 DataFrame이 생성됩니다.
역 마스크로 분할:
Sales가 30보다 작은 행으로 DataFrame을 생성하려면 ~:
df2 = df[~mask]
print (df2)
A Sales
0 3 10
1 4 20
이렇게 하면 Sales 값이 30보다 작은 모든 행을 포함하는 df2라는 새 DataFrame이 생성됩니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3