데이터 분석을 할 때 방대한 양의 데이터 처리를 하기 위해서는 처리하기 쉬운 데이터의 형태로 표현할 필요가 있습니다.
이럴 때 보통 엑셀에서도 사용할 수 있는 .csv 파일 형태로 변환합니다.
CSV 파일이란?
CSV (comma-separated values) 파일은 일반적으로 간단한 쉼표(,)로 구분한 텍스트 데이터 및 텍스트 파일이다.
출처: https://ko.wikipedia.org/wiki/CSV_(%ED%8C%8C%EC%9D%BC_%ED%98%95%EC%8B%9D)
먼저, 간단하게 csv 파일을 임의로 만들어 보겠습니다.
메모장으로 다음과 같이 만들어도 무방합니다.
저장할 때 주의할 점은 그대로 저장하면 엑셀에서 깨질 수 있으므로, ANSI 형식으로 인코딩하여 저장합니다.
저장된 .csv 파일을 엑셀에서 불러오면 다음과 같이 엑셀의 셀에 맞게 변환하여 보여줍니다.
기존에 .csv 파일이 존재하면 위와 같이 그대로 엑셀에서 불러와서 데이터 처리하면 되지만 일반적인 환경이라면 csv 파일을 만들어주고 가공해야 하는 일이 발생합니다.
따라서, 데이터 분석에서 많이 사용하는 언어인 python을 통해서 .csv 파일을 만들어보고자 합니다.
import csv
import datetime
# 현재 시간
now = datetime.datetime.now()
# 임의의 리스트 생성
name_list = [['1', '홍길동'],['2', '김남길'],['3', '박재범'],['4', '무명'],['5','새로이']]
# csv 파일을 만들기 위한 함수
def csv_writer(time):
with open('.\\csv_writer_test_{}{}{}{}{}{}.csv'.format(now.strftime('%Y'), now.strftime('%m'), # .csv 파일을 만들기 위해 with open
now.strftime('%d'), now.strftime('%H'),
now.strftime('%M'), now.strftime('%S')),
mode='w', newline='') as RESULT_writer_file:
RESULT_writer = csv.writer(RESULT_writer_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
RESULT_writer.writerow(
["번호", "이름"])
for row in name_list: # 위의 name_list를 순차적으로 순회
RESULT_writer.writerow([row[0],row[1]]) # 각 행을 순차적으로 .csv 파일에 저장
csv_writer(now)
시간을 저장하는 파일에 삽입하는 내용에 대한 설명은 다음 포스트에서 확인해 주세요.
https://itsnyeong.tistory.com/9
위 코드를 실행 후 생성된 csv 파일은 다음과 같습니다.
이를 엑셀에서 한번 불러와 보죠.
문제없이 불러와 지는 것을 알 수 있습니다.
지금까지 간단하게 파이썬에서 리스트를 통해 데이터를 생성하고 .csv 파일로 변환 후 엑셀을 통해서 불러오는 과정을 함께했습니다.
이를 응용한다면 더욱 데이터 처리, 분석하기가 용이해질 것입니다.
더욱 자세한 파이썬에서 csv 파일을 처리하는 방법에 대한 내용은 다음 python 공식 documentation을 확인해 주세요.
https://docs.python.org/ko/3/library/csv.html
'Python3 관련' 카테고리의 다른 글
[Python3] python3에서 .json 파일 다루기 - 하이퍼파라메타 저장 (0) | 2022.02.21 |
---|---|
파이썬에서 Matplotlib를 사용해 gif 파일 만들기! (0) | 2022.02.01 |
python3 - 파이썬으로 현재 시간 출력하기 datetime (0) | 2022.01.21 |
Python & C, C++ 메모리 공유 / Python 메모리 관리 (0) | 2022.01.19 |
[pycharm anaconda] 파이참에서 아나콘다 interpreter 환경 설정 (0) | 2022.01.18 |