csv 데이터 다루기
2018. 4. 7. 01:52ㆍPython-이론/python-인공지능2
csv 데이터 다루기
csv는 엑셀로 쉽게 만들 수 있고 데이터베이스에서 많이 사용해서 알아두면 편리합니다. csv는 한개 이상의 레코드를 갖고 있고 레코드는 한개이상의 필드를 갖고 있습니다. 레코드는 줄바꿈으로 구분이 됩니다. 엑셀에서 csv형식으로 출력할 때 euc_kr로 사용하기 때문에 인코딩할 때 주의해주어야 합니다. 각 필드는 쉼표로 구분되고 한필드에 들여쓰기 있다면 , "들여쓰기 전" "들여쓰기 후" ,
예제1 csv파일 읽기# example data # id, name, price #1000, sdCard, 1000 #1001, keyboard, 17000 #1002, "lg" "mouse",13000 import codecs filename = "list_csv.csv" #file에 위 내용을 작성해 주세요 data = [] csv = codec.open(filename, "r","euc_kr").read() rows = csv.split("\n") for row in rows: if row =="" continue cells = row.split(",") row.append(cells) for c in row: print(c[0],c[1],c[2])
csv 모듈 사용해서 해보기
csv 모듈을 사용하면 더 쉽게 위와 같은 내용의 코드를 작성 할 수 있다.
#위의 예제와 같이 데이터 파일을 미리 작성해주세요 import csv, codecs fp = codecs.open(filename, "r","euc_kr") reader = csv.reader(fp,delimiter="," ,quotechar='"') #delimiter 구분 문자 quotechar 어떤기호로 데이터를 감싸고 있는지 for row in reader: print(row[0], row[1],row[2])
csv 이용해서 파일에 쓰기
import csv, codecs with codec.open(filename,"w","euc_kr") as fp : writer = csv.writer(fp, delimiter = ",", quotechar ='"') writer.writerow(["id","name","price"]) writer,writerow(["1000","SD card","20000"]) writer.writerow(["1001","keyboard","15000"]) writer.writerow(["1002","mouse","17000"])
'Python-이론 > python-인공지능2' 카테고리의 다른 글
machineLearning 이란? (0) | 2018.04.16 |
---|---|
excel데이터 다루기 (0) | 2018.04.08 |
yaml 데이터 형식 (0) | 2018.04.03 |
yaml데이터 분석하기 (0) | 2018.04.03 |
json데이터 분석 (0) | 2018.04.03 |