- 과거 내용
- DataFrame - 변환
1. csv 변환
#csv 변환
df.to_csv(path_or_buf='test.csv')
기본적으로 to_csv를 통해서 변환을 한다.
path_or_buf는 저장할 경로를 지정하는 옵션이다.
이외에도 sep은 구분자, na_rep은 결측값에 대한 설정, float_format은 소수점의 형식 설정,
columns는 출력 열 지정 등 다양한 옵션이 존재한다.
2. excel 변환
#excel로 변환
df.to_excel(excel_writer='test.xlsx',sheet_name='test')
to_excel을 사용해서 excel로 변환한다.
excel_writer를 사용해서 저장할 경로를 지정하고, sheet_name으로 시트 이름을 지정한다.
이외에도 csv와 같이 na_rep, columns, header 등의 옵션이 존재한다.
3. 클립보드에 저장
#클립보드 저장
df.to_clipboard()
to_clipboard를 사용하면 자동으로 클립보드에 저장이 된다.
그래서 엑셀을 키고 붙여넣기를 하면 클립보드에 저장된 데이터가 나온다.
옵션으로 sep, header 등이 있다.
4. 딕셔너리 변환
#원본 데이터
col1
row1 1
row2 2
row3 3
#딕셔너리 변환
print(df.to_dict(orient='dict'))
{'col1': {'row1': 1, 'row2': 2, 'row3': 3}}
to_dict으로 딕셔너리로 변환한다.
orient로 출력할 형식을 지정할 수 있다.
dict, list, series, index, split 등 다양한 형태가 있다.
5. 마크다운 변환
#원본 데이터
col1 col2
row1 1 2
row2 3 4
#마크다운 변환
print(df.to_markdown())
| | col1 | col2 |
|:-----|-------:|-------:|
| row1 | 1 | 2 |
| row2 | 3 | 4 |
마크다운 변환을 출력하기 위해서는 pip install tabulate를 진행해야 한다.
to_markdown을 통해서 변환하며, index, tablefmt 등의 옵션이 있다.
6. 피클 객체 변환
#피클 객체로 변환
df.to_pickle('test.pkl')
to_pickle을 사용해서 피클 객체로 변환할 수 있다.
불러올 때는 read_pickle(주소)를 통해서 불러올 수 있다.
7. html 변환
#html로 변환
print(df.to_html())
to_html을 통해 html 코드로 변환할 수 있다.
columns, col_space, header, index, na_rep 등 다양한 옵션이 존재한다.
8. 문자열로 변환
#원본 데이터
col1 col2
row1 1 2
row2 3 4
#string로 변환
print(df.to_string())
print(type(df.to_string()))
col1 col2
row1 1 2
row2 3 4
<class 'str'>
to_string으로 문자형태로 변환한다.
columns, col_space, header, index, na_rep 등의 옵션이 존재한다.
9. numpy로 변환
#원본 데이터
col1 col2
row1 1 2
row2 3 4
#numpy로 변환
print(df.values)
[[1 2]
[3 4]]
values를 통해 numpy.ndarray 형태의 결과를 얻을 수 있다.
10. dict-> dataframe
#원본 데이터
data={'col1':[1,2], 'col2':[3,4]}
#dict->dataframe
df2 = pd.DataFrame.from_dict(data=data, orient='columns')
print(df2)
col1 col2
0 1 3
1 2 4
from_dict를 사용해서 딕셔너리를 데이터프레임으로 바꿀 수 있다.
to_dict의 반대과정이다.
마찬가지로 orient를 사용해서 columns, index 등으로 설정할 수 있다.
'프로그래밍 > 파이썬' 카테고리의 다른 글
EDA - 2단계 : 실제 데이터 다루기 (2) (2) | 2023.07.27 |
---|---|
EDA - 2단계 : 실제 데이터 다루기 (1) (3) | 2023.07.25 |
EDA - 1단계 : 데이터 다루기 - 멀티인덱스, 반복 (1) | 2023.07.22 |
EDA - 1단계 : 데이터 다루기 - 시간 (1) | 2023.07.20 |
EDA - 1단계 : 데이터 다루기 - 통계(2) (2) | 2023.07.19 |