5章テキスト分析
3章と4章では、時系列解析とコホート分析で日付と数値の扱い方を調べました。しかし、データセットは、数値や関連するタイムスタンプだけではないことがよくあります。多くの場合、文字フィールドには質的属性からフリーテキストまで興味深い情報が含まれます。データベースはカウント、合計、平均などの数値計算が得意ですが、テキストデータの操作も非常に得意です。
この章ではまず、SQLが得意な種類のテキスト分析タスクと、他のプログラミング言語のほうが適しているタスクの概要を説明します。次に、UFO目撃情報のデータセットを紹介します。そして、コーディング、テキストの特性とプロファイリング、SQLによるデータのパース、さまざまな変換、要素からの新しいテキストの作成、最後に正規表現などを使った大きなテキストブロック内の要素の検索について説明します。
5.1 SQLでテキスト分析を行う理由
日々生成される膨大なデータの大部分は、単語、文、段落、さらにはもっと長い文書などのテキストで構成されています。分析に使うテキストデータは、人間やアプリケーションから入力された識別情報、ログファイル、サポートチケット、顧客調査、ソーシャルメディアの投稿、ニュースフィードなどさまざまなソースからもたらされます。データベースのテキストは、構造化(データが別々の意味を持つさまざまなテーブルフィールドにある場合)から半構造化(データが別々の列にあるが、役に立つようにするにはパースやクリーニングが必要な場合)、またはほとんど非構造化(長いVARCHAR
やBLOB
フィールドに任意の長さの文字列があり、さらに分析する前に大幅な構造化が必要な場合)までさまざまなものがあります。幸い、SQLには便利な関数がたくさんあり、関数を組み合わせてさまざまなテキスト構造化および分析タスクを実行できます。 ...
Get SQLではじめるデータ分析 ―クエリで行う前処理、時系列解析、コホート分析、テキスト分析、異常検知 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.