SlideShare a Scribd company logo
1 of 6
脱 CSV のススメ

  @ymmt2005
  2012-05-23
CSV やめませんか?
• Excel で読み書きしやすくない
 – ロケールによって区切り文字が違う
 – ユニコードを扱えない
 – 型が勝手に変わる
 – 書式設定できない(日付のフォーマット等)
• 大きい
 – 圧縮しやすいはずなのに
• 標準化されていない
 – RFC はあるけれど、Excel 様に従うしかない
CSV のよくある風景
$ cat hoge.csv
abc,123,+33,+81-1,=222+4,33-2,2012-05-22 13:22:33




            右寄せ +がない 勝手に計算 2月33日?!                  秒が省略
XLSX なら
•   ユニコードを扱える
•   数値や日付の型を扱える
•   書式も設定できる
•   ZIPファイルなのでサイズが小さい
•   一応標準化されている
•   Excel との親和性もばっちり!
•   ZIPの中身は XML で直接編集も可能
応用例

秒まで表示




XLSX のほうが XLS よりずっと小さい
Python で扱うなら
• openpyxl がお勧め
 – http://packages.python.org/openpyxl/
 – 文字列、数値、日付等は自動的に Python の型
   と相互変換
• 読み書きをストリームで扱うモードがあ
  るので、巨大なログも読み書き出せます
 – あまり大きいと Excel で開けないけど 
 – ストリームモードだと書式設定ができないよ
   うに見えるけど、ウニャればできます

More Related Content

Viewers also liked

とある脆弱性の永い議論
とある脆弱性の永い議論とある脆弱性の永い議論
とある脆弱性の永い議論Mtikutea
 
kintoneだけで頑張らない
kintoneだけで頑張らないkintoneだけで頑張らない
kintoneだけで頑張らないCybozucommunity
 
【基調講演】変える覚悟、変わる覚悟。
【基調講演】変える覚悟、変わる覚悟。【基調講演】変える覚悟、変わる覚悟。
【基調講演】変える覚悟、変わる覚悟。Cybozucommunity
 
kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」
kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」
kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」Cybozucommunity
 
各アプリケーションの概要(パッケージ版)
各アプリケーションの概要(パッケージ版)各アプリケーションの概要(パッケージ版)
各アプリケーションの概要(パッケージ版)Cybozucommunity
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!ymmt
 
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]Cybozucommunity
 

Viewers also liked (7)

とある脆弱性の永い議論
とある脆弱性の永い議論とある脆弱性の永い議論
とある脆弱性の永い議論
 
kintoneだけで頑張らない
kintoneだけで頑張らないkintoneだけで頑張らない
kintoneだけで頑張らない
 
【基調講演】変える覚悟、変わる覚悟。
【基調講演】変える覚悟、変わる覚悟。【基調講演】変える覚悟、変わる覚悟。
【基調講演】変える覚悟、変わる覚悟。
 
kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」
kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」
kintoneで実現する働き方改革支援事業 サテライトシェアオフィス「New Work」
 
各アプリケーションの概要(パッケージ版)
各アプリケーションの概要(パッケージ版)各アプリケーションの概要(パッケージ版)
各アプリケーションの概要(パッケージ版)
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!
 
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
【kintone便利に使おうシリーズ】[vol.07 プロセス管理]
 

Still using CSV? Use XLSX! / 脱 CSV のススメ

  • 1. 脱 CSV のススメ @ymmt2005 2012-05-23
  • 2. CSV やめませんか? • Excel で読み書きしやすくない – ロケールによって区切り文字が違う – ユニコードを扱えない – 型が勝手に変わる – 書式設定できない(日付のフォーマット等) • 大きい – 圧縮しやすいはずなのに • 標準化されていない – RFC はあるけれど、Excel 様に従うしかない
  • 3. CSV のよくある風景 $ cat hoge.csv abc,123,+33,+81-1,=222+4,33-2,2012-05-22 13:22:33 右寄せ +がない 勝手に計算 2月33日?! 秒が省略
  • 4. XLSX なら • ユニコードを扱える • 数値や日付の型を扱える • 書式も設定できる • ZIPファイルなのでサイズが小さい • 一応標準化されている • Excel との親和性もばっちり! • ZIPの中身は XML で直接編集も可能
  • 6. Python で扱うなら • openpyxl がお勧め – http://packages.python.org/openpyxl/ – 文字列、数値、日付等は自動的に Python の型 と相互変換 • 読み書きをストリームで扱うモードがあ るので、巨大なログも読み書き出せます – あまり大きいと Excel で開けないけど  – ストリームモードだと書式設定ができないよ うに見えるけど、ウニャればできます