全2690文字
PR

人工知能(AI)の開発に重要な役割を果たすのが「データ」だ。注目のプログラミング言語「Python」と開発環境「Visual Studio Code(VSCode)」を使ってデータの加工や分析を行う方法を解説する。

【ステップ2】データを整形する

 ステップ2は、データの整形です。ステップ1で確認した通り、もともとのCSVファイルには「列名のデータ」3行(0〜2行目)とそれ以外の「表のデータ」が入っています。列名のデータには空白のセルがありました。また、表のデータには、本来数値が入っているべき箇所に「・」「-」などの数値でないデータが含まれていました。これらは適切に処理する必要があります。ここではデータ整形のポイントを2つにしぼって、順番に解説します。

  • (1)表の列名(カラム名)を整形する
  • (2)数値でないデータを置き換える

表の列名(カラム名)を整形する

 もう一度、図16を見てください。これはもともとのCSVファイルを読み込んでDataFrame形式になったデータです。0〜2行目の3行分が列名のデータです。もともと空白だったセルには「NaN」という値が入っています。NaNはNot a Numberの略で、数値ではないという意味です。この3行をDataFrameのカラム名に設定する方法を説明します。

 まず、もともとのCSVファイルを、0〜2行目の「列名のデータ」と4〜52行目の「都道府県別の表のデータ」に分けて読み込みます。3行目は「全国」のデータで、53行目以降は東京都特別区と政令指定都市のデータなので、ここでは使いません。

 次に、「列名のデータ」の3行が1行になるように結合します。その結合した列名のデータを「都道府県別の表のデータ」の列名(カラム名)に設定します。

 では、CSVファイルから「列名のデータ」と「都道府県別の表のデータ」を別々に読み込み、DataFrame型式のデータを作りましょう。先に4〜52行目の「都道府県別の表のデータ」を読み込みます。

 ノートブックでコードを記述します。先ほどの実行結果の下のあたりにマウスをホバーすると「+コード」というボタンが現れます(図18)。このボタンを押すと、実行結果の下に新しいセルが追加され、続きのコードを入力できます。

図18●実行結果の下部にマウスをホバーして「+コード」を押し、セルを追加する
図18●実行結果の下部にマウスをホバーして「+コード」を押し、セルを追加する
[画像のクリックで拡大表示]

 追加したセルにリスト2を記述します。リスト1と同様に、変数dataにCSVファイルを読み込んでいます。「skiprows=4」という引数を指定することで、先頭4行を飛ばして読み込みます。0〜2行目は列名のデータなので、あとで読み込みます。3行目は「全国」のデータなのでここでは使いません。

リスト2●CSVからデータを抽出してDataFrameの形式で読み込むコード
リスト2●CSVからデータを抽出してDataFrameの形式で読み込むコード
[画像のクリックで拡大表示]

 data.drop()では、dropメソッドを使って、変数dataから指定した行や列を削除します。ここでは下から21行分である53〜73行目(東京都特別区と政令都市のデータ)を削除しています。

 セルの実行ボタンを押しましょう。セルの下に、変数dataの先頭5行が表示されました(図19)。0行目が「01 北海道」の行のデータからはじまっています。カラム名は0から始まる数字になっています。

図19●リスト2の実行結果
図19●リスト2の実行結果
[画像のクリックで拡大表示]

 Data Viewerを使ってデータ全体を表示すると、48行目の「不詳」の行のデータで終わっていることも確認できました(図20)。図16に示した都道府県別のデータの最終行は「不詳」なので、読み込みたい行がすべて読み込まれていることがわかります。

図20●リスト2の実行後、「Data Viewer」で開いたdataの末尾
図20●リスト2の実行後、「Data Viewer」で開いたdataの末尾
[画像のクリックで拡大表示]