SlideShare ist ein Scribd-Unternehmen logo
1 von 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 で開けないけど 
 – ストリームモードだと書式設定ができないよ
   うに見えるけど、ウニャればできます

Weitere ähnliche Inhalte

Andere mochten auch

とある脆弱性の永い議論
とある脆弱性の永い議論とある脆弱性の永い議論
とある脆弱性の永い議論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
 

Andere mochten auch (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 プロセス管理]
 

Kürzlich hochgeladen

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 

Kürzlich hochgeladen (8)

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

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 で開けないけど  – ストリームモードだと書式設定ができないよ うに見えるけど、ウニャればできます