이전에 pandas란 무엇인지, 데이터 프레임과 시리즈에 대해 간단히 알아보았다.
2020/09/18 - [Python/Pandas Tutorial] - [Python] Pandas Tutorial :: pandas란? 데이터프레임이란? 시리즈란?
이번에는 ,(쉼표)로 분리된 csv, txt 파일과 /t(tab)으로 분리된 파일, header가 없는 파일을 불러오는 방법에 대해 알아보자.
판다스로 csv 파일 불러오기
0. import pandas library
0-1. pandas library가 설치되어 있는지 확인
> !conda list | grep pandas
pandas 0.20.3 py36hd6655d8_2
참고 :: 설치된 library 목록 확인
> !conda list
# packages in environment at /Users/apple/anaconda3:
#
# Name Version Build Channel
_anaconda_depends 5.0.1 py36h6e48e2d_1
_ipyw_jlab_nb_ext_conf 0.1.0 py36h2fc01ae_0
_tflow_select 2.3.0 mkl
absl-py 0.1.10 pypi_0 pypi
alabaster 0.7.10 py36h174008c_0
anaconda custom py36ha4fed55_0
anaconda-client 1.6.5 py36h04cfe59_0
anaconda-navigator 1.6.10 py36h62d491b_0
anaconda-project 0.8.0 py36h99320b2_0
appnope 0.1.0 py36hf537a9a_0
appscript 1.0.1 py36h9e71e49_1
asn1crypto 0.22.0 py36hb705621_1
astor 0.6.2 pypi_0 pypi
astroid 1.5.3 py36h1333018_0
astropy 2.0.2 py36hf79c81d_4
atari-py 0.1.1 pypi_0 pypi
audioread 2.1.5 pypi_0 pypi
audiosegment 0.9.0 pypi_0 pypi
babel 2.5.0 py36h9f161ff_0
backports 1.0 py36ha3c1827_1
backports.shutil_get_terminal_size 1.0.0 py36hd7a2ee4_2
beautifulsoup4 4.6.0 py36h72d3c9f_1
bitarray 0.8.1 py36h20fa61d_0
bkcharts 0.2 py36h073222e_0
blas 1.0 mkl
blaze 0.11.3 py36h02e7a37_0
bleach 1.5.0 pypi_0 pypi
bokeh 0.12.10 py36hfd5be35_0
boto 2.48.0 py36hdbc59ac_1
...
0-2. import library
import pandas as pd
1. read csv file with pandas (쉼표로 구분되어 있는 파일)
쉼표로 구분되어 있는 csv 파일을 불러오는 코드는 다음과 같다.
(실습에 사용된 모든 데이터는 아래 첨부해 놓았다.)
괄호 안에 데이터가 저장되어있는 경로를 입력해준다.
df = pd.read_csv("01. Data/friend_list.csv")
결과는 다음과 같다.
> df
name age job
0 John 20 student
1 Jenny 30 developer
2 Nate 30 teacher
3 Julia 40 dentist
4 Brian 45 managr
5 Chris 25 intern
(참고) friend_list.csv

2. read txt file with padas (쉼표로 구분되어 있는 파일)
쉼표로 구분되어있는 txt 파일은 csv 파일 불러오는 것과 동일한 코드로 불러온다. 확장자만 경로에 잘 넣어주면 된다.
df = pd.read_csv("01. Data/friend_list.txt")
friend_list.txt

3. read txt file with padas (tab으로 구분되어 있는 파일)
tab으로 구분되어 있는 파일을 불러올 때는 delimiter 를 '/t'로 지정해준다.
df = pd.read_csv("01. Data/friend_list_tab.txt", delimiter = "\t")
friend_list_tab.txt

4. read csv file that has no header with pandas
header(컬럼명)이 없는 파일을 불러올 때는 header = None으로 지정해주고 이후 컬럼 명을 따로 생성해 주거나,
처음 불러올 때부터 지정해주는 방법이 있다.
처음 불러올 때부터 컬럼명을 생성해 주려면 names = []로 하면 된다.
df = pd.read_csv("01. Data/friend_list_no_head.csv", header = None)
## create column name
df.columns = ['name','age','job']
df = pd.read_csv("01. Data/friend_list_no_head.csv", header = None, names = ['name','age','job'])
데이터
전체 코드
###################################################
# 제목 : Pandas Tutorial
# 작성자 : SK C&C 이다경 선임
# 작성일 : 20200918
#
# Description
#
# [SK C&C] Pandas Tutorial
# Chapter2 : 파일에서 데이터 불러오기
###################################################
# 0. import pandas library
## pandas 설치 되었는지 확인
!conda list | grep pandas
# pandas 0.20.3 py36hd6655d8_2
### (참고) 설치된 라이브러리 확인
!conda list
# packages in environment at /Users/apple/anaconda3:
#
# Name Version Build Channel
# _anaconda_depends 5.0.1 py36h6e48e2d_1
# _ipyw_jlab_nb_ext_conf 0.1.0 py36h2fc01ae_0
# _tflow_select 2.3.0 mkl
# absl-py 0.1.10 pypi_0 pypi
# alabaster 0.7.10 py36h174008c_0
# anaconda custom py36ha4fed55_0
# anaconda-client 1.6.5 py36h04cfe59_0
# anaconda-navigator 1.6.10 py36h62d491b_0
# anaconda-project 0.8.0 py36h99320b2_0
# appnope 0.1.0 py36hf537a9a_0
# appscript 1.0.1 py36h9e71e49_1
# asn1crypto 0.22.0 py36hb705621_1
# astor 0.6.2 pypi_0 pypi
# astroid 1.5.3 py36h1333018_0
# astropy 2.0.2 py36hf79c81d_4
# atari-py 0.1.1 pypi_0 pypi
# audioread 2.1.5 pypi_0 pypi
# audiosegment 0.9.0 pypi_0 pypi
# babel 2.5.0 py36h9f161ff_0
# backports 1.0 py36ha3c1827_1
# ...
import pandas as pd
# 1. read csv file with pandas (쉼표로 구분되어 있는 파일)
df = pd.read_csv("01. Data/friend_list.csv")
df
# name age job
# 0 John 20 student
# 1 Jenny 30 developer
# 2 Nate 30 teacher
# 3 Julia 40 dentist
# 4 Brian 45 managr
# 5 Chris 25 intern
df.head(3)
# name age job
# 0 John 20 student
# 1 Jenny 30 developer
# 2 Nate 30 teacher
df.tail(2)
# name age job
# 4 Brian 45 managr
# 5 Chris 25 intern
# 2. read txt file with padas (쉼표로 구분되어 있는 파일)
df = pd.read_csv("01. Data/friend_list.txt")
# 3. read txt file with padas (tab으로 구분되어 있는 파일)
df = pd.read_csv("01. Data/friend_list_tab.txt", delimiter = "\t")
# 4. read csv file that has no header with pandas
df = pd.read_csv("01. Data/friend_list_no_head.csv", header = None)
# 4_2. create column name
df.columns = ['name','age','job']
df = pd.read_csv("01. Data/friend_list_no_head.csv", header = None, names = ['name','age','job'])
출처
www.youtube.com/watch?v=diSZwmq5HA0&list=PLVNY1HnUlO25etNe08s1H1nIIbbZdJwxA&index=2