데이터 프레임 값 바꾸기

도로롱·2022년 12월 21일
0

pandas

목록 보기
15/18

1. 판다스에서 데이터 프레임의 값 바꾸기

판다스에서 value값이 이상한것이 들어가 있거나, 변경하고 싶은 값이 있다면 수정하거나 대체 할 수 있다.

2. 원하는 위치의 값 변경

df.loc[인덱스명,컬럼명] = 바꿀 값

예를 들어, A열의 2번째 인덱스에 들어있는 3의 값을 3000으로 변경하고 싶으면
df.loc[2:'A'] = 3000

3. 특정 열 통째로 변경

특정 컬럼 전체의 값을 바꾸고 싶은 경우에는

df['컬럼명'] = [바꿀 값의 리스트]

예를 들어, 'A' 열의 값을 1000,2000,3000,4000,5000,6000으로 변경하고 싶다면,
df['A'] = [1000,2000,3000,4000,5000,6000]

4. 특정 행 통째로 변경

특정 row 의 값들을 모두 바꾸고 싶은 경우에는

df.loc[행의 인덱스번호]= [바꿀 값의 리스트]

예를들어, 2행의 값들을 0으로 모두 변경하고 싶다면,
df.loc[2] = [0,0,0]

5. 여러 행, 여러 열의 값을 동시에 변경

다소 복잡할수 있지만, 여러 행/열을 한꺼번에 대체하고 싶은 경우에는

df.loc[[행의 인덱스] ,[열의 이름 인덱스]] = 바꿀값

예를들어, 2행과 4행의 값과 'A','C'열의 값을 동시에 같은 값으로 변경하고 싶다면,
df.loc[[2,4],['A','C']] = 9999

6. 조건에 해당하는 위치의 값 변경

만일, 특정 조건을 만족하는 위치에 해당하는 값들만 수정하고 싶다면

df.loc[조건, 바꿀 컬럼] = 바꿀 값

예를 들어, A열의 값이 9999인 경우 해당위치의 B열 값을 -500으로 변경
df.loc[df['A'] ==9999, 'B'] == -500

7. 특정 값 대체 하기 =Replace

특정 값들만 골라 다른값으로 대체하고 싶을때는 replace 메소드를 사용하면 편리하다

df = df.replace({'열이름': 기존값}, 변경값)

예를들어, B열의 -500에 해당 하는 값을 0으로 변경
df = df.replace({'B':-500}, 0)

profile
질문 없는 성장은 없다. 3년차 데이터 분석가

0개의 댓글