편의상 4. 파일 저장 및 열기에서 저장한 파일을 활용한다.
1. column 수정
위의 코드는 '학교'라는 column에 대해서 딕셔너리를 사용해 '북산고' 데이터를 '상북고'로 바꾼 것이다.
만약 같은 column에 대해서 두 개 이상의 데이터를 바꾸고 싶으면 어떻게 할까?
딕셔너리에서 사용되는 key:value를 하나 더 추가해 주면 된다.
다음은 'SW특기' column에 대해서 str.lower를 사용해 소문자로 변경한 것이다.
반대로 대문자로 변경을 하고 싶다면 str.upper을 사용하면 된다.
만약 '학교' column에서 '상북고', '능남고'가 아닌 '상북고등학교', '능남고등학교'로 변경하고 싶다면 어떻게 하면 될까?
'학교' column에 대해서 '등학교'라는 문자열을 더해주고 다시 그것을 '학교' column에 저장해 주면 된다.
2. column 추가
만약 국어, 영어, 수학, 과학, 사회에 대한 성적을 다 더한 '총합'을 구하고 싶다면 어떻게 하면 될까?
간단히 ['총합'] column을 정의해주면 된다.
다음 방법은 loc를 이용해서 column을 추가하는 방법이다.
앞에서 df.loc안에는 [row selection, column selectino]이 들어간다.
즉, df.loc [df[‘총합’]>결과’] 이것은 총합이 400보다 큰 row들의 '결과' column에 'Pass'라는 문자열을 넣는 것이다.
3. column 삭제
만약 총합 점수보다는 결과(Pass)만 보고 싶다면 어떻게 하면 될까?
다음은 drop를 사용하여 '총합' column을 삭제한 결과이다.
만약 여러 개의 column을 삭제하고 싶으면 column의 리스트에 삭제를 원하는 column을 넣으면 된다.
ex) df.drop(columns = [‘국어’, ‘영어’, ‘수학’])
4. row 삭제
다음은 drop을 활용하여 row를 삭제하는 방법이다.
위의 결과는 index = '4번'에 해당하는 row를 삭제한 결과이다.
다음은 filt라는 변수를 사용하여 '수학' 점수가 80점 미만인 학생들을 필터링한 것이다.
위의 결과는 filt 변수와 drop를 활용하여 80점 미만인 학생들의 데이터를 삭제한 결과이다.
5. row 추가
다음은 loc를 활용하여 '9번' 학생의 row를 추가한 결과이다.
loc를 활용할 때는 column에 맞는 데이터 값을 넣어주면 된다.
6. cell 수정
만약 특정 row에 해당하는 column 값을 수정하고 싶다면 어떻게 하면 될까?
다음은 loc를 활용하여 '4번' 학생의 'SW'특기를 'Python'으로 수정한 결과이다.
7. column 순서 변경
만약 결과 데이터를 우선적으로 알고싶으면 어떻게 하면 될까?
결과 column을 우선적으로 보여주면 될 것이다.
다음은 df의 column 리스트를 cols에 저장하고
df를 재정의해준다. (제일 마지막에 있는 column을 앞에다 갖다 붙인 뒤 나머지를 이어준다.)
8. column 이름 변경
colum의 한글로 된 이름을 영어로 바꾸고 싶다면 어떻게 할까?
편의상 결과, 이름, 학교에 대한 column의 이름을 바꿔보자
먼저 df를 결과, 이름, 학교에 재정의해준다.
그런 다음 columns를 활용하여 변경하고자 하는 column의 이름을 해당 리스트에 넣어주면 된다.
'Jupyter Computer > Pandas' 카테고리의 다른 글
[Python] 14. Pandas - 그룹화 (0) | 2022.03.06 |
---|---|
[Python] 13. Pandas - 함수 적용 (0) | 2022.03.06 |
[Python] 11. Pandas - 데이터 정렬 (0) | 2022.03.05 |
[Python] 10. Pandas - 결측치 (0) | 2022.03.04 |
[Python] 9. Pandas - 데이터 선택 (조건) (0) | 2022.03.03 |