-
[파이썬] 데이터프레임에서 특정 조건의 값만 바꾸기파이썬 배우기 2024. 1. 29. 17:18
데이터프레임에서 특정 조건의 값만 바꾸는 법을 알아보겠습니다.
예를 들어, 오른쪽과 같은 데이터프레임이 있습니다. 학생 이름과 반, 점수가 있을 때,
1. 모든 학생의 점수를 5점씩 올리고 싶다
2. 1반 학생들의 점수만 올리고 싶다. 그런데 올린 값이 100점 이상이면 100으로 제한
3. 올린 점수와 올리지 않은 점수 모두 보고 싶을 때
df = pd.DataFrame({'name':['A','B','C','D','E','F','G'], 'class':[1,1,2,1,2,2,1], 'score':[70,30,10,50,90,100,20]}) df
1. 모든 학생의 점수를 5점씩 올리고 싶다
df['score'] = (df['score'] + 5).apply(lambda x: min(x, 100)) df
2. 1반 학생들의 점수만 올리고 싶다. 그런데 올린 값이 100점 이상이면 100으로 제한
df.loc[df['class']==1, 'score'] = (df['score'] + 5).apply(lambda x: min(x, 100)) df
3. 올린 점수와 올리지 않은 점수 모두 보고 싶을 때
df['score_modify'] = df.apply(lambda row: (row['score'] + 5) if row['class'] == 1 else row['score'], axis=1) df
'파이썬 배우기' 카테고리의 다른 글
[파이썬] 간단하게 라이브러리 버전 확인하는 두 가지 방법 (1) 2023.12.10 [파이썬] 한국어 텍스트 데이터 전처리 예제 (1) 토큰화, 클렌징, 빈도수 탐색 (2) 2023.12.10 [파이썬] 파이썬에서 SQL 실행하기 (sqlite3) (0) 2023.11.24 [파이썬] 결측값 처리하는 6가지 방법 (fillna, SimpleImputer) (0) 2023.11.22 [파이썬] pandas 데이터프레임 속성값 바꾸기 (apply, replace) (1) 2023.11.22