반응형
반응형
#python
#pandas
pandas DataFrame을 활용하다보면 조작을 해줘야 할 상황이 자주 생기는데 관련해서 말씀드리겠습니다.
1. 삽입
- 중간에 데이터프레임을 삽입하려면 concat을 사용하면 편리함
- a DataFrame 선언
- b DataFrame 선언
- a 중간에 b 삽입
- a2와 b2로 .copy() 한 이유는 원본을 건드리지 않기 위함
- ignore_index = True : 삽입하면서 index를 다시 설정하기 위함
2. 삭제(drop)
- 열 drop (원본을 변경하려면 옵션에 "inplace=True" 설정
a.drop(['A'], axis=1)
- drop할 열의 이름을 list로 저장한 후 삽입해주어도 됨
drop_cols = ['A', 'B', 'C']
a.drop(drop_cols, axis=1, inplace=True)
- 행 drop
drop_idx = a[a['TEST'>3].index
a.drop(drop_idx, axis=0, inplace=True)
- 조건을 조회한 후 index를 추출 한 뒤 drop 진행
- 다중 조건을 하려면 & 또는 | 연산자를 사용해주면 됨
drop_idx = a[(a['A']>3)&(a['B']<10)]
a.drop(drop_idx, axis=0, inplace=True)
3. 조회
- loc을 사용한 조회
- 만약 인덱스를 통해 조회를 하려면 loc을 사용해야함
show_idx = [1, 3, 4, 7, 11, 13]
a.loc[show_idx]
- 조건을 사용한 조회
- 만약 값을 찾고싶을 때 조회하는 방법은 삭제부분에 설명하긴 했지만 다시
a[(a['A'] < 3) & (a['B'] > 11) | (a['C'] == 0)]
- max값을 갖는 index 조회
- 이런식으로 응용도 가능합니다.
* 조회 또는 조작한 후 사용하시려면 index를 초기화해준 후 사용해주어야 원활하게 사용할 수 있습니다
a.reset_index(drop=True, inplace=True)
감사합니다.
반응형
'programming > python' 카테고리의 다른 글
(ssh) ssh작업 관련(설정 및 오류 등) (0) | 2022.11.28 |
---|---|
(파일전송)파일 전송, 폴더 전송(with scp) (0) | 2022.11.23 |
(Jupyter notebook)파이참 주피터 원격 설정 방법 (0) | 2022.11.16 |
(Ubuntu) 부팅 시 프로그램 자동 실행 설정 (0) | 2022.11.14 |
(Jupyter notebook)주피터 노트북 세팅(원격 연결, 오류(500error) 등) (0) | 2022.11.11 |