コラムバックナンバー
Option合同会社 柳井 隆道
発信元:メールマガジン2019年5月22日号より
これを読んでいるのはデータにかかわる仕事をしている皆さんということで、誰もがCSVファイルを扱ったことがあるでしょう。データを他の人やコンピュータに受け渡す、あるソフトウェアで保存したデータを違うソフトウェアで開く、そんな時に使います。
今回はこのCSVファイルを扱う上で知っておかなければならないことを紹介します。意外とテクニカルにもかかわらず誰もが扱うことのある形式で、知らずに躓くことが多いです。永久保存版の説明記事として役立てていただければ幸いです。
■CSVファイルとExcel
CSVファイルはおなじみのExcelでも開けますが、これはテキストファイルなので他のどんなソフトウェアでも開ける形式です。
一方で同じExcelで編集できるファイルでも拡張子が.xlsxになっているのはExcelなど一部のソフトでしか開けないものです。参考までにこの中身はzipファイルで、解凍ソフトを使えば解凍ができてしまいます。
Excelでしか開かないのであればxlsxで保存してもいいのですが、Excelでは扱いきれない大きなデータを別のソフトで開く場合などでは、xlsx形式では困るのです。たとえばMySQLなどのデータベースソフトではxlsxは扱えませんが、CSVであれば扱えます。
CSVファイルはサイズの大小を問わずデータを保存し、さまざまなソフトで開く。そのままテキストとして人間が読んで中身を確認することも可能な、汎用的にデータを扱うのに適した形式なのです。
■テキストの文字コード
CSVファイルを含むテキストファイル一般で考慮しなければならないのは文字コードと改行コードです。人間からの見た目が同じテキストでも、コンピュータ内部では異なるデータの保持の仕方をする場合があり、その代表的な設定が文字コードと改行コードなのです。同じ「あいうえお」という日本語5文字を書いたテキストを保存する際も文字コードが違うと実際には全然違うファイルになっています。
代表的な文字コードに「Shift-JIS」(SJIS)「UTF-8」があります。
UTF-8は最近メジャーで、LinuxやMacで主流になっている形式です。これは日本語や中国語、ヘブライ語など世界各地のローカル文字を世界共通で扱えるようにするために新しく作られた形式です。
Shift-JISは古くからWindowsやMicrosoftのソフトウェア(MacのMS Officeも)で使われてきた形式で、今でもWindowsのソフトウェアで保存するテキストファイルはこの形式であることが多いです。日本でしか使われない形式です。
※アドバンストな方のために、厳密にはWindowsで使われているのはSJISの亜種であるCP932という文字コードで、ほとんど同じですが一部異なるものです。SJISだと思っていたテキストをSJISとして開くとエラーが発生することがごくまれにあり、その場合はCP932として開けばうまくいきます。
ExcelでCSV形式を指定して保存するとSJIS形式で保存されます。そのCSVファイルをMacのソフトでUTF-8だと思って開くと文字化けが発生することもあるというのはこの文字コードの違いによるのです(最近は文字コードを自動推定して文字化けが起こらないように開くケースが多いですが)。
■改行コード
改行もコンピュータの内部では文字として扱われています(制御文字)。この改行コードも主にOSによって3パターンあります
– CR(キャリッジリターン:現在単体で使われることはない)
– LF(ラインフィード)
– CR+LF(上のCRとLFを組み合わせて使う)
文字化けが起こることはなく、CSVファイルとして扱う場合は気にしなくていいケースがほとんどですが、サイズの大きいデータを扱うソフトではCSVファイルを読み込むときの設定でどれを改行コードとして使っているかを明示的に指定を求められるケースがあります。プログラムのソースコードではこれが文字コードが混在しているとエラーになる場合があります。
Windowsは「CR+LF」、MacとLinuxは「LF」が使われます。WindowsとMacとでは前提としている文字コードや改行コードが違うので、お互い配慮するようにしましょう。
■区切り文字
CSVは「character-separated values」つまり「特定の文字で区切られた値」のことです。区切り文字にはカンマが使われることが多いですが、タブ区切りでもいいのです。タブ区切り形式はExcelではそのまま開けませんが、テキストエディタで開いてコピー&ペーストでExcelに貼り付けたときに意図した通りセルに収まる利点があります。データベースや統計ソフトで開くときも、区切り文字としてカンマでなくタブを指定することができます。
CSVファイルにも形式の違いがあり、特にサイズの大きいデータを扱うケース(データベースやDWH、RやPythonなどのプログラム)では意識が求められる機会が増えます。これらの違いを意識し、取り扱いを間違えないようにしてくださいね。
東京大学を卒業後、webマーケティングやサービス企画、システム開発などに従事。
デジタルマーケティングの世界に落ち着き、事業会社、広告代理店を経て2014年に独立。
現在は大小さまざまの事業会社、広告代理店などに対して、テクノロジー観点からデジタルマーケティングの支援を行っている。データ計測の設計、実装から分析、マーケティングオートメーションや広告運用などの施策との連携まで扱う。
さまざまな規模の経験から、企業の身の丈にあったデジタルマーケティングの企画に強い。フリーランスで活動していたが、2017年から法人化。
2025/06/12(木)
【a2i交流会2025】デジタルマーケター大集合!a2i 5年ぶりの交流会|2025/6/12(木)
a2iの交流会が5年ぶりに帰ってきました! ライトニングトーク「私と生成AI」には、小川卓氏(HAPPY ANALYTICS)、川手遼一氏( …
2025/05/22(木)
オンラインセミナー「生成AI活用、マーケ現場の実践と組織導入のリアル」|2025/5/22(木)
生成AIはマーケターの働き方や組織のあり方を大きく変えつつあります。特に、最先端テクノロジーに日常的に触れるデジタル広告運用の現場では、生成 …
2025/04/16(水)
オンラインセミナー「【GA4&GTM完全攻略】それ計測したかった!を叶えよう」|2025/4/16(水)
GA4とGTMの正しい設定方法を基礎から実践まで徹底解説します。 GA4導入時に押さえておくべきポイントや、イベント設定・カスタムディメンシ …
【コラム】Google AI OverviewでGoogleの検索体験はより快適になる?
アナリティクスアソシエーション 大内 範行日本でも、Googleの検索エンジンで、AI Overviewの表示が増えてきました。 AI Overviewが表示された検索クエリで、クリ …
少し前の話になりますが、2025年2月に「Google 広告 P-MAX 解体新書 ~究極の自動化とデータドリブンアトリビューション~」とい …
【コラム】SEOの辻正浩さんにインタビューしたらその使命感に圧倒された
アナリティクスアソシエーション 大内 範行アナリティクスアソシエーションでは、不定期に話題になったこと、人についてインタビューを行っていきます。第二回は、SEOの第一人者 Faber …