텍스트 파일을 판다스(pandas)를 이용하여 수정해 보겠다.
예제 목적
빨간 사각형 부분을 다른 경로로 변경하는 것이다.
![[파이썬]텍스트 파일 내용 한번에 수정(pandas) - undefined - 예제 목적 예제 목적용 이미지](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
내용 수정(with pandas)
1) text 파일 읽기
read_csv
를 이용하여 .txt
파일을 읽을 수 있다.
import pandas
df= pd.read_csv('CupDataCoco/train.txt',names=['path'])
print(df)
이때 names
인자를 이용하면 원하는 컬럼명을 설정할 수 있다.
![[파이썬]텍스트 파일 내용 한번에 수정(pandas) - undefined - 내용 수정(with pandas) 데이터프레임 출력](http://t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png)
2) 내용 변경(replace)
각 행의 값들을 수정해줘야 한다.
이때 for loop보다 더 효율적인 방법이 .apply
를 이용하는 것이다.
df['path'] = df['path'].apply(lambda x: x.replace('/home/user/Object Detection/mmdetection/CupDataYolo/valid/','/home/user/Object Detection/mmdetection/CupDataCoco/PNGImages/'))
apply 사용법은 해당문서를 참조하기 바란다.
2) text파일 재저장
변경이 완료되었으면 재저장을 해줘야 한다.
이때 .to_csv
를 이용하면 손쉽게 저장할 수 있다.
df.to_csv('CupDataCoco/valid.txt', index=False, header=None)
주의할 점은 텍스트 파일로 변환하는 과정에서 DataFrame 정보들도 같이 넘어간다.
index number와 column name이 이에 해당된다.
이를 보이지 않게 하기 위해서는 index=False
, header=None
을 설정해 주면 된다.
'파이썬 > pandas' 카테고리의 다른 글
[파이썬 pandas]데이터프레임 열 합치기(merge) (0) | 2023.02.20 |
---|---|
vscode 터미널에서 데이터프레임(dataframe) 예쁘게 출력하는 방법 (0) | 2023.01.26 |
[판다스 기초] 특정 열(column) 삭제 하는 방법 (0) | 2022.08.23 |
[판다스 기초] 인덱스(index) 시작 번호 지정 하는 법 (0) | 2022.08.23 |
[판다스] 엑셀(excel) sheet별 데이터 이어 붙이는 방법 (0) | 2022.08.22 |
댓글
꼬예님의
글이 좋았다면 응원을 보내주세요!
이 글이 도움이 됐다면, 응원 댓글을 써보세요. 블로거에게 지급되는 응원금은 새로운 창작의 큰 힘이 됩니다.
응원 댓글은 만 14세 이상 카카오계정 이용자라면 누구나 편하게 작성, 결제할 수 있습니다.
글 본문, 댓글 목록 등을 통해 응원한 팬과 응원 댓글, 응원금을 강조해 보여줍니다.
응원금은 앱에서는 인앱결제, 웹에서는 카카오페이 및 신용카드로 결제할 수 있습니다.