Googleデータアナリティクス：表計算ソフトでデータ型を フォーマットする

# はじめに

本記事は、Googleデータアナリティクスのプロフェッショナル認定証のプログラムより、参照させて頂いています。興味を持った方は、是非受講してみてください。

https://www.coursera.org/professional-certificates/data-analytics-japanese

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/21a12cb1-a49a-802f-d903-6f68758eca0c.png" width="800">

# データ型を変換する理由

表計算ソフトで作業をしていると データを変換する必要が出てきます。 

数字を
- 日付
- 文字列
- パーセンテージ
- 通貨

に変換することもあります。

すべてのデータが、分析に適した フォーマットかどうか、 再確認することが重要です。 データをクリーニング、処理しても 適切な形式になっていないことも あります。

[映画データのテーブル][table]を 思い出してみましょう。 日付や予算などの数値や、 俳優の名前などの文字列など さまざまなデータ型があったと思います。

[table]: https://d3c33hcgiwev3.cloudfront.net/OEQa-emvRfCy0rZlqu_0pQ_1f68113f22be48cba154ca7363873fa1_Ying-Huateta--Tong-Huoni-Bian-Huansuru.xlsx?Expires=1681776000&Signature=KL4Jl7JJ8fUUSmPdaCZ5DbG~6zg1ysuQQgKL2pmidtGPHwmHI6mjfEKae2Gdp7yGh-22lJXf9AfaRgBvlb~pbPGD5vXN7PvKahMzELe00rUtoL3xZbU3g6tYmmiaMTFjMTYNv6P0W5pnfpcH-Mh6xfhSpxzURbD0E6yIECiyayI_&Key-Pair-Id=APKAJLTNE6QMUY6HBC5A

これらは個別の値ですが 表計算ソフトがそれを自動的に 認識してくれるとは限りません。 例を見てみましょう。 
- シートにある映画を 新しい順に並べ替えたいとします。 表計算ソフトが映画を日付ではなく 文字列として処理した場合 アルファベット順に並べ替えられる 可能性があります。 
- また、データセットに一貫性のない 単位が含まれている可能性もあり その場合は変換する必要があります。 たとえば、米ドルと英ポンドの 両方を含むテーブルなどが該当します。 
- 映画のテーブルで、日付が 間違っていることを考えてみましょう。 もし上司が最新映画 20 本のリストを 必要としているのに、シートが 最新順ではなくアルファベット順で 並んでいたら 必要なリストを提供することは できません。 

### <font color="MediumBlue">不適切にフォーマットされたデータ</font>

- 解決に時間のかかるミスを招く。
- 最終的にステークホルダーの 意思決定に影響を与えかねない。

しかし、早い段階でデータの変換と フォーマット化に時間をかければ そのような事態は避けられます。

# 表計算ソフトでデータ型を 指定する

### 通貨に変換

映画の データ テーブルですが 金額の列が通貨として 入力されていません。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/62369e7c-b039-6b7a-b645-6faadaf6aa61.png" width="700">

シートの上部にあるツールバーには これらの数値を特定のデータ型に 変換するためのメニューがあります。 ドロップダウンメニューを開くと、 数字、通過、日付、パーセントなど たくさんの選択肢があります。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/a000a515-ce11-1833-85a4-4322a0c47723.png" width="700">

詳しくみるとカスタム数値形式など のオプションもあります。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/eca90978-60f0-d2c6-5429-f3760b14de0d.png" width="700">

この列は通貨にしたいので、通貨を 選択します。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/ed6f0f22-4e80-921d-ba63-7fca09742322.png" width="700">

この列を選び、通貨のショートカットを 押すだけです。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/c2eb628e-d629-daae-7127-84bf3bdf48a6.png" width="500">

### 単位に変換

天気予報番組で、毎日の気温に関する データを集めているとします。 ここに、ある地域の気温や風速、 降水量に関する毎日の観測データが 入ったテーブルがあります。 今、気温は華氏で表示されていますが 分析のためには摂氏にする 必要があります。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/ccc35dd2-830b-0bd2-9289-0b9386daa44c.png" width="700">

でも大丈夫です。 CONVERT 関数で単位を変更すれば よいだけです。 ここでは、この空の列を使用し、 テーブルに最初の気温を入力します。 新しい列に CONVERT 関数を入力し 摂氏に変更します。 それから、変換したいセルが何かを入れます。 そして最後に、変換を行います。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/61e0adcc-3857-bb4c-463e-5049e3956e6f.png" width="700">

これで出来上がりです。 これで、このセルには 分析に適した単位が設定されました。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/b6c0731d-1ad4-9e93-05e2-4b0bc9e63938.png" width="700">

この列の残りの部分にも、 この単位を当てはめることができます。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/be49d2f4-4bfa-9e6d-6a78-e0692e1c87ce.png" width="700">

これで、この気温データは すべて摂氏になり テーブル全体の単位も統一されました。 

### ヒント

***<font color="MediumVioletRed">数式を使ってテーブルにデータを 追加する場合は、データを値として 貼り付けてから戻りましょう。 </font>***　そうすることで、データが固定されます。 これをしないとセルに数式が残り データを扱う際に混乱してしまう 可能性があります。 

早速やってみましょう。 値をコピーし、新しい列で右クリックします。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/cc60f573-daf5-355c-b7d5-925ebbe01d25.png" width="700">

特殊貼り付けのオプションから 値のみ貼り付けを選択します。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/a3f0f7ee-55ad-3509-4c3c-3289c9b94c7f.png" 　width="700">

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/b94c878d-cf93-93df-166c-07096c19e38d.png" 　width="700">

これで、この列には固定値が 表示されるようになりました。 

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2358573/3ead65dc-6c6b-e902-ed73-88b1863ca5a6.png" 　width="700">

# その他のユースケース

- [文字列から日付に変換する][1]
- [文字列から数値に変換する][2]
- [列を結合する][3]
- [数値からパーセンテージに変換する][4]

[1]: https://www.ablebits.com/office-addins-blog/google-sheets-change-date-format/
[2]: https://productivityspot.com/convert-text-to-numbers-google-sheets/
[3]: https://www.techrepublic.com/https:/www.techrepublic.com/article/how-to-split-or-combine-text-cells-with-google-sheets/article/how-to-split-or-combine-text-cells-with-google-sheets/
[4]: https://support.google.com/docs/answer/3094284?hl=ja

:::note info
プロからのアドバイス: データ上で列ごとに異なるフォーマットが必要とされることは多々あります。一貫性を保つことが重要で、列全体が同じフォーマットになっていることを確認するのがベストプラクティスです。
:::