본문 바로가기
공유 놀이터

Python Panda 특정 조건 값에 맞춰서 Data 출력 및 수정하는 방법

by ★√★ 2021. 5. 5.

안녕하세요 이번 포스팅은 Python의 Pandas 패키지를 이용한 DataFrame 함수를 활용하는 방법 중에 특정 조건 값에 맞춰서 Data 출력 및 조건 값에 맞게 도출되는 값 수정하는 방법까지 설명 드리도록 하겠습니다. 

 

panda-특정-조건값-출력-수정-썸네일
panda-특정-조건값-출력-수정

 

코드 구현을 위한 Source Data DataFrame 화 하기

 

: 일단 DataFrame을 구현하기 위한 Source Data를 구현해보도록 하겠습니다. 이전 포스팅에서 설명 드린 것처럼 DataFrame을 구현하기 위해서는 Dictionary로 구현되어 있는 Data Source가 필요합니다. 아래와 같이 예시 Data를 구현해보도록 하겠습니다. (참고로 이 부분은 이전 포스팅에서 똑같은 Source Data를 사용하고 있다는 걸 참조 해주세요.)

 

# 필요한 패키지를 먼저 선언을 합니다.
import pandas as pd
import numpy as np

# 예시 Source Data를 구현하여, pandas를 이용하여 DataFrame화 시키는 코드입니다.
data = {"names": ["Kim", "Park", "Jang", "Kim", "MC-Yoo"],
"NumberofYear" : [2014, 2015, 2017, 2018, 2019],
"Value": [90, 86, 77, 99, 75]}
df = pd.DataFrame(data, columns=["names", "NumberofYear", "Value", "remarks"],
index=["first_row", "second_row", "third_row", "forth_row", "fifth_row"])

 

▼ 위의 Data는 예시로 한 것이고, Source Data는 원하시는 내용으로 다시 수정해서 구현하셔도 됩니다.

 

특정 조건 값에 맞춰서 Data 출력하는 방법

 

: 위에서 언급한 것처럼 특정 조건 값에 맞춰서 Sort를 하여 보고 싶은 Column을 출력하는 Code를 구현해보도록 하겠습니다. 아래와 같이 "names" column에 원하는 Value를 가지고 원하는 Column의 값을 출력 할 수가 있습니다.

 

추가적으로 논리 연산으로 출력하는 방법과 조건값에 맞게 출력되는 특정 Column 값을 수정까지 하는 코드를 구현해도보도록 하겠습니다.

 

해당 항목에 대해서 예제를 통해서 코드를 구현하였습니다.

# "names" column에 원하는 Value를 가지고 원하는 Column의 값을 출력  

print('==== 원하는 조건값에 맞춰서 출력할 때 =====')
print(df.loc[df['names'] == 'Kim',['names','NumberofYear']])

# 줄을 하나 띄워서 구분되어 보여주기 위한 print() 코드
print()

# 논리 연산이나 조건값에 따른 특정 Column 값 출력

print('==== 논리 연산에 따른 DataFrame 출력 =====')
print(df.loc[(df['NumberofYear']>2016)&(df['Value']<80),:])

# 줄을 하나 띄워서 구분되어 보여주기 위한 print() 코드
print()

# 조건값에 맞게 출력된 Value의 값을 수정
print('==== 조건 값에 따른 특정 Column 값 수정 =====')
df.loc[ df['NumberofYear'] > 2016 , 'remarks'] = '해당 Column 수정 값'
print(df)

 

위 코드 구현해서 출력을 하면 아래와 같은 결과 값을 도출 할 수 있습니다. 제가 의도한 대로 Column 조건 값에 맞게 출력이 일단 되고, 조건 값에 맞게 논리 연산 값이 출력되며, 조건 값에 맞게 Value가 출력이 되고 이 부분이 원하는 값에 맞게 수정 되는 것을 확인 하실 수 있습니다. 

 

==== 원하는 조건값에 맞춰서 출력할 때 =====
          names  NumberofYear
first_row   Kim          2014
forth_row   Kim          2018

==== 논리 연산에 따른 DataFrame 출력 =====
            names  NumberofYear  Value remarks
third_row    Jang          2017     77     NaN
fifth_row  MC-Yoo          2019     75     NaN

==== 조건 값에 따른 특정 Column 값 수정 =====
             names  NumberofYear  Value         remarks
first_row      Kim          2014     90             NaN
second_row    Park          2015     86             NaN
third_row     Jang          2017     77  해당 Column 수정 값
forth_row      Kim          2018     99  해당 Column 수정 값
fifth_row   MC-Yoo          2019     75  해당 Column 수정 값
sixth_row     Choi          2020     88  해당 Column 수정 값

 

이상입니다. 지금까지 Python의 Pandas 패키지를 이용한 DataFrame 함수를 활용하는 방법 중에 특정 조건 값에 맞춰서 Data 출력 및 조건 값에 맞게 도출되는 값 수정하는 방법까지 해서 포스팅을 작성하였습니다. 최고의 프로그래머가 되는 데 조금이나 도움이 되었으면 좋겠습니다. 항상 말씀드리지만 코드 분석이 끝나면 직접 해보시길 추천 드립니다. 그럼 이만 마무리 하도록 하겠습니다. 감사합니다.

 

[저작권이나, 권리를 침해한 사항이 있으면 언제든지 Comment 부탁 드립니다. 검토 후 수정 및 삭제 조치 하도록 하겠습니다. 그리고, 기재되는 내용은 개인적으로 습득한 내용이므로, 혹 오류가 발생할 수 있을 가능성이 있으므로, 기재된 내용은 참조용으로만 봐주시길 바랍니다. 게시물에, 오류가 있을때도, Comment 달아 주시면, 검증 결과를 통해, 수정하도록 하겠습니다.] 

 

관련 다른 글

728x90

댓글