간단한 팁을 정리해보려고 합니다.
텍스트 데이터를 정제하다 보면 corpus 를 만들어야 하는데요. 이 때, 보통 txt 포맷으로 만드는 걸로 알고 있습니다.
크롤링을 할 때, txt 나 csv 파일 둘 다 해놓아도 어떤 api 에서는 csv 파일을 pandas로 읽어서 작업하는 게 편할 때가 있고,
어떤 api 에서는 txt 파일로 input 해줘야 하는 경우들이 종종 있습니다.
그래서 이번 시간에는 pandas 의 dataframe 중에 특정 Series 컬럼을 txt 로 바꾸는 걸 정리해보려 합니다.
대단한 건 아니지만 이게 간간히 필요할 때가 있습니다. { 저의 경우에는 말이죠 :) }
저의 경우에는 sentencepiece 로 vocab 을 생성하거나 scikit-learn 에 특정 벡터를 만들때 요구하는 파라미터의 타입이 txt 형태인 경우들이 있었습니다. 그 때마다 pandas 에서 작업하고 해당 컬럼을 txt 로 만들고는 했는데 별 거 아니지만 정리하면 좋을 것 같아서 포스팅 해보려 합니다.
자, 그러면 이제 간단한 리뷰 데이터를 가져오겠습니다. { 본인이 가진 데이터를 활용하시면 됩니다 :) }
예전에 어떤 제품군에 대한 리뷰를 크롤링 했었는데요. 그에 대한 데이터입니다.
리뷰 갯수는 2만개정도 되네요. 이를 txt 포맷으로 바꿔보겠습니다.
우선 빈 string 을 하나 객체로 인스턴스화 해줍니다.
그 다음에 개행문자를 넣어서 넣어주는게 1단계입니다.
mystr = ''
for i in tqdm(range(len(df_review))):
mystr += str(df_review[i]) + '\n'
그 후 with open 으로 저장 해주면 됩니다.
with open('corpus_0422.txt', 'w', encoding='utf-8') as f:
f.write(mystr)
저장한 걸 로드 해보겠습니다.
r = open('mycorpus_example_x_train.txt', mode='r', encoding='utf-8')
# 로드한 txt 를 읽기
r.readlines()
간단한 작업들입니다. 그러면 작업한 것들이 잘 되었는지 확인해보겠습니다.
정말 사소한 부분이지만 따로 정리해두는 게 좋을 거 같아서 정리해보았습니다.
이제 dataframe -> txt 는 간단하게 만드시면 될 것 같습니다.
이상 포스팅 마칩니다 :)
'데이터분석 > pandas' 카테고리의 다른 글
pandas map 함수와 정규표현식을 이용한 텍스트 전처리 (0) | 2020.04.23 |
---|---|
공공데이터 '아파트 분양가격' 동향 파악하기 - final (0) | 2020.03.09 |
pandas series dataframe (0) | 2020.03.01 |
공공데이터 '아파트 분양가격' 동향 파악하기 - 1단계 (0) | 2020.02.29 |
pandas dataframe 문자열 칼럼 숫자형(int,float)으로 변환 (0) | 2020.02.28 |