Pandas 조건부 서식

Zeeshan Afridi 2023년6월21일
  1. Pandas 조건부 서식
  2. Pandas 조건부 서식 사용
  3. style 속성을 사용한 조건부 서식
  4. 결론
Pandas 조건부 서식

특정 값을 포함하는 열의 모든 셀 또는 특정 임계값을 초과하는 행의 모든 셀을 강조 표시할 수 있습니다. 조건부 서식은 데이터의 오류나 이상값을 빠르게 식별할 수도 있습니다.

이 기사에서는 Pandas의 조건부 서식에 대해 설명합니다.

Pandas 조건부 서식

Pandas 조건부 서식은 조건에 따라 dataframe 열의 서식을 지정할 수 있는 강력한 도구입니다. 예를 들어 조건부 서식을 사용하여 특정 값보다 큰 열의 모든 셀을 강조 표시하거나 특정 텍스트 문자열이 포함되어 있는지 여부에 따라 셀 서식을 지정하는 데 사용할 수 있습니다.

pandas 조건부 서식을 사용하여 dataframe 열의 형식을 지정하는 몇 가지 방법이 있습니다. 한 가지 방법은 스타일 기능을 사용하는 것입니다. 이 함수는 조건 및 형식의 사전을 가져와 해당 형식을 dataframe에 적용합니다.

pandas 조건부 서식을 사용하는 또 다른 방법은 적용 기능입니다. 이 함수를 사용하면 조건에 따라 열의 모든 셀에 함수를 적용할 수 있습니다.

Pandas 조건부 서식 사용

round() 함수를 사용하여 숫자 값을 포함하는 셀의 서식을 조건부로 지정할 수 있습니다.

df.round(2)

이렇게 하면 데이터 프레임의 모든 숫자 값이 소수점 이하 두 자리로 반올림됩니다. format() 함수를 사용하여 텍스트 값을 포함하는 셀의 서식을 조건부로 지정할 수도 있습니다.

df.format("%s")

이것은 데이터 프레임의 모든 텍스트 값을 문자열로 포맷합니다. 또한 apply() 기능을 활용하여 사용자 지정 기준에 따라 조건부로 셀 서식을 지정할 수 있습니다.

df.apply(lambda x: x.str.upper() if x.name == "column1" else x)

이렇게 하면 column1 열의 모든 값이 대문자 텍스트로 서식 지정됩니다.

style 속성을 사용한 조건부 서식

조건에 따라 팬더 셀의 형식을 지정하는 몇 가지 방법이 있습니다. 가장 일반적인 방법은 style 속성을 사용하는 것입니다.

셀의 style 속성을 CSS 속성 사전으로 설정하여 이를 수행할 수 있습니다. 사전의 키는 CSS 속성의 이름이어야 하며 값은 해당 속성을 설정하려는 값이어야 합니다.

import pandas as pd

df = pd.DataFrame([[2, 3, 1], [3, 2, 2], [2, 4, 4]], columns=list("ABC"))
df.style.apply(
    lambda x: ["background: red" if v > x.iloc[0] else "" for v in x], axis=1
)

출력:

스타일 속성을 사용한 조건부 서식

applymap() 메서드를 사용한 조건부 서식 지정

applymap() 메서드를 활용하여 데이터 프레임의 모든 셀을 포맷할 수도 있습니다. 이 방법은 함수를 인수로 사용하고 해당 함수를 데이터 프레임의 모든 셀에 적용합니다.

import numpy as np
import pandas as pd

df = pd.DataFrame(np.random.rand(4, 3))
df.style.applymap(lambda x: "background-color : yellow" if x > df.iloc[0, 0] else "")

출력:

![applymap 속성을 사용한 조건부 서식](</img/Pandas/applymap Method.PNG>를 사용한 조건부 서식

어떤 방식으로 셀 서식을 지정하든 데이터를 쉽게 읽고 이해할 수 있는 방식으로 지정해야 합니다.

결론

결론적으로 Python pandas 셀의 값을 조건부로 형식화할 수 있습니다. CSS 스타일 속성 및 값의 사전을 사용하는 내장 style 함수를 사용할 수 있습니다.

설정할 가장 중요한 속성은 background-color 속성으로, 16진수 코드 또는 명명된 색상으로 설정할 수 있습니다. 설정할 수 있는 다른 속성에는 color(텍스트 색상), font-weight(텍스트의 굵기) 및 text-align(텍스트의 수평 정렬)이 있습니다.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

관련 문장 - Pandas DataFrame