Python
pandas로 표 형식 데이터 읽기
현무랑 니니
2022. 7. 10. 23:26
반응형
데이터 사이언스의 시작은 데이터에 접근하는 것이다.
그래서 파이썬의 pandas 패키지로 표 형식 데이터를 읽고 쓰는 방법을 알아본다.
pandas 패키지가 지원하는 몇 가지 형식과 액세스 함수를 다음 표에 표시한다.
데이터 형식 | 파일 형식 | 읽기 함수 | 쓰기 함수 |
text | csv | read_csv | to_csv |
JSON | read_json | to_json | |
HTML | read_html | to_html | |
XML | read_xml | to_xml | |
binary | Excel | read_excel | to_excel |
SQL | SQL | read_sql | to_sql |
먼저 CSV 파일을 읽고 쓰는 함수로 read_csv(), write_csv()가 있다.
read_csv()
파일이나 URL 등에서 데이터를 읽어온다.
아래 코드는 github에 있는 타이타닉 데이터셋이 있는 URL을 통해 읽어 온다.
import pandas as pd
url = 'https://raw.githubusercontent.com/hyunmu/public/master/train.csv'
df = pd.read_csv(url)
읽어온 데이터셋의 내용은 아래와 같다.
print(df.head())
PassengerId Survived Pclass ... Fare Cabin Embarked
0 1 0 3 ... 7.2500 NaN S
1 2 1 1 ... 71.2833 C85 C
2 3 1 3 ... 7.9250 NaN S
3 4 1 1 ... 53.1000 C123 S
4 5 0 3 ... 8.0500 NaN S
[5 rows x 12 columns]
to_excel()
데이터프레임 객체를 엑셀 파일에 쓴다.
첫 번째 인수는 엑셀 파일의 이름이고 선택적 두 번째 인수는 DataFrame을 저장할 시트의 이름이다.
마지막 인수인 index에 None을 주어서 인덱스를 기록하지 않도록 한다.
df.to_excel('../data/train.xlsx', sheet_name='titanic', index=None)
read_excel()
엑셀 파일을 데이터프레임 객체로 읽어 온다.
읽을 파일 이름을 첫 번째 인수로 주고 다음 인수로 읽을 시트를 명시한다.
df = pd.read_excel('../data/titanic.xlsx', sheet_name='train')
to_csv()
데이터프레임 객체를 csv에 저장한다.
첫 번째 코드는 데이터프레임 객체에서 'Survived' 열을 제거하고 그 결과를 특성 데이터셋 X_train에 저장한다.
다음 코드는 'Survived' 열을 제거한 X_train을 csv 파일로 저장한다.
X_train = df.drop(columns=['Survived'])
X_train.to_csv('../data/titanic_train.csv', index=None)
엑셀 2010 xlsx/xlsm 파일을 읽고 쓰려면 추가로 openpyxl 같은 파이썬 패키지를 설치해야 한다.
반응형