๐Ÿ Python

[Python]CSV ์ €์žฅ&์ฝ๊ธฐ, JsonํŒŒ์ผ ์ €์žฅ&์ฝ๊ธฐ

yeun.log 2024. 6. 17. 22:40
๋ฐ˜์‘ํ˜•

 

CSV
Comma-Seperated Value
, ๋กœ ๊ตฌ๋ถ„๋œ ํŒŒ์ผ.
๋ฐ์ดํ„ฐ๋ถ„์„ ํ‘œ์ค€ text ํŒŒ์ผํ˜•์‹.

df.to_csv('์ €์žฅํ•  ํŒŒ์ผ๋ช….csv')
→ dataFrame์„ csvํŒŒ์ผ๋กœ ์ €์žฅ.

๊ทธ๋ƒฅ ํด๋ฆญํ•ด์„œ ์—‘์…€๋กœ ์—ด๋ฉด ์•ˆ๋˜๊ณ 
๋ฉ”๋ชจ์žฅ ๊ฐ™์€๋ฐ ์—ด์–ด๋ณด๋ฉด ์ž˜ ์ €์žฅ๋œ ๊ฑธ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

python์€ ๊ธฐ๋ณธ์œผ๋กœ UTF-8ํ˜•์‹์œผ๋กœ ์ €์žฅ๋˜๊ณ  ๋ถˆ๋Ÿฌ์˜จ๋‹ค.
๋งŒ์•ฝ ์˜ค๋ž˜๋œ ํŒŒ์ผ์€ ๋‹ค๋ฅธ encodingํ˜•์‹์„ ์“ธ ์ˆ˜๋„ ์žˆ๋Š”๋ฐ ์ด๋•Œ๋Š” ๋”ฐ๋กœ ์„ค์ •ํ•ด์„œ ๋ถˆ๋Ÿฌ์™€์•ผ ํ•œ๋‹ค.
ํ•จ์ˆ˜ : ์ฃผ์–ด ์—†์ด ๋ช…๋ น์–ด(๋ชฉ์ ์–ด)๊ฐ€ ๋ฐ”๋กœ ์“ฐ์ด๋Š” ๊ฒฝ์šฐ
mothod : OOP. ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด.
             ์ฃผ์–ด.๋™์‚ฌ(๋ชฉ์ ์–ด) ํ˜•ํƒœ.
             df.to_csv('ํŒŒ์ผ๋ช…')

๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด์—์„œ๋Š” ํ•จ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ method ๋ฉ”์†Œ๋“œ๋ผ๊ณ  ๋ถ€๋ฅด๋Š” ๊ฒŒ ์•ฝ์†์ด๋‹ค.
phthon๋„ ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด์ด๊ธฐ ๋•Œ๋ฌธ์— method๋กœ ๋ถˆ๋Ÿฌ์•ผ ํ•œ๋‹ค.

index ์—†์ด ์ €์žฅ์‹œ
df.to_csv('ํŒŒ์ผ๋ช….csv', index=None)

์–ด์ฐจํ”ผ ํ˜ธ์ถœ ์‹œ ์ž๋™์œผ๋กœ index๊ฐ€ ๋ถ™๊ธฐ ๋•Œ๋ฌธ์— ์—†์ด ์ €์žฅํ•˜๋Š” ๊ฒŒ ํ•„์š”ํ•˜๋‹ค.


pandas.read_csv(data, encoding='cp949')
→ csvํŒŒ์ผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

python์€ encodingํ˜•์‹์˜ ๊ธฐ๋ณธ์ด utf-8์ด๊ธฐ ๋•Œ๋ฌธ์—
utf-8ํ˜•์‹์˜ ํŒŒ์ผ์€ df.read_csv(๋ณ€์ˆ˜๋ช…)๊ณผ ๊ฐ™์ด ์ƒ๋žตํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
๊ทธ ์™ธ์— ์•ˆ ๋ถˆ๋Ÿฌ์™€ ์งˆ ๊ฒฝ์šฐ encoding='cp949'๋ฅผ ์ ์–ด์ฃผ๋ฉด ๋Œ€๋ถ€๋ถ„์€ ๋ถˆ๋Ÿฌ์™€์ง„๋‹ค.

pandas.read_csv(data, index_col='์ปฌ๋Ÿผ๋ช…')
→ index์ง€์ •ํ•ด์„œ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

์„ฑ๋ช…์„ index๋กœ ์ง€์ •ํ•ด์„œ ๋ถˆ๋Ÿฌ์™”๋‹ค.


df.to_json('ํŒŒ์ผ๋ช….json')
→ json์œผ๋กœ ์ €์žฅ


pandas.read_json('ํŒŒ์ผ๋ช….json')

๋ฐ˜์‘ํ˜•