반응형
CSV 파일을 읽어서 key와 value 로 받아오기
CSV파일은 콤마로 분리된 데이터 파일이다.
사실 콤마대신 다른 문자나 기호를 사용할 수 있다.
단지 csv의 약자가 comma seperate value 이기에 콤마를 많이 쓸 뿐.
데이터에 콤마가 있을 경우가 많기에 '' 표시 또는 탭 기호를 많이 사용하기도 한다.
import pandas as pd
import csv
타이타닉 데이터 구조 파악
df = pd.read_csv('./data/titanic.csv')
df.head()
survived | pclass | sex | age | sibsp | parch | fare | embarked | class | who | adult_male | deck | embark_town | alive | alone | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 3 | male | 22.0 | 1 | 0 | 7.2500 | S | Third | man | True | NaN | Southampton | no | False |
1 | 1 | 1 | female | 38.0 | 1 | 0 | 71.2833 | C | First | woman | False | C | Cherbourg | yes | False |
2 | 1 | 3 | female | 26.0 | 0 | 0 | 7.9250 | S | Third | woman | False | NaN | Southampton | yes | True |
3 | 1 | 1 | female | 35.0 | 1 | 0 | 53.1000 | S | First | woman | False | C | Southampton | yes | False |
4 | 0 | 3 | male | 35.0 | 0 | 0 | 8.0500 | S | Third | man | True | NaN | Southampton | no | True |
csv.DictReader() 객체 적용
- csv파일의 각 행(row) 데이터에 필드명과 매핑하여 dict 타입을 생성
- key, value 형식으로 표현
# 함수정의
f = "./data/titanic.csv"
stop_cnt = 0
with open(f, newline='') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader :
stop_cnt += 1
if stop_cnt > 3: break
for key, value in row.items():
print(key, value)
survived 0
pclass 3
sex male
age 22.0
sibsp 1
parch 0
fare 7.25
embarked S
class Third
who man
adult_male True
deck
embark_town Southampton
alive no
alone False
survived 1
pclass 1
sex female
age 38.0
sibsp 1
parch 0
fare 71.2833
embarked C
class First
who woman
adult_male False
deck C
embark_town Cherbourg
alive yes
alone False
survived 1
pclass 3
sex female
age 26.0
sibsp 0
parch 0
fare 7.925
embarked S
class Third
who woman
adult_male False
deck
embark_town Southampton
alive yes
alone True
반응형
'데이터인문학' 카테고리의 다른 글
내가 몰랐던 단어 feat, a.k.a (0) | 2022.05.22 |
---|---|
독전감. 당신의 과거를 지워드립니다.(비프케 로렌츠) (0) | 2022.03.01 |
판다스(Pandas) cheeting sheet (0) | 2022.02.09 |
마크다운(MarkDown) 사용법 (0) | 2022.02.08 |
속성을 의미하는 Attribute 와 Property (0) | 2021.11.07 |