このノートでは、国名(Japan)からコードや地域名に変換する方法をご紹介します。
国名/コードの変換では下記のことができます。(一部抜粋)
例えば、国名やコードから大陸名や地域名に変換することができます。しかし、大陸名から国名への変換はできません。
次に、国名から国コードの変換、国コードから国名の変換ができます。
今回は国名から国コードに変換、国名から地域名への変換方法をご紹介します。
サンプルデータとして、ユニコーン企業のデータを使用します。
国の列があり、国がISO(国際標準化機構)の二文字の国コード(ISO2C)になっています。
国コードではどの国か判別しづらいので、国名に変換したいです。
国の列ヘッダメニューの「値を置き換える」から「国名 / コードの変換」を選択します。
テキストを変換のダイアログが表示されるため、変換元に「ISO2(文字)」 を、変換先に「国名」を指定します。
プレビューボタンをクリックすると、「国コード(ISO2)」から「国名」に変換されています。
実行することで、国コード(ISO2)」から「国名」に変換することができました。
サマリ・ビューの国の列から「チャートの作成」ボタンをクリックします。
国ごとにユニコーン企業数(行数)を可視化することができました。
しかし、地域や大陸ごとに見ると、どこがユニコーン企業数が多いのでしょうか?
列ヘッダメニューの「値を置き換える」から「国名 / コードの変換」を選択します。
テキストを変換のダイアログが表示されるため、変換元に「国名」 を、変換先に「大陸」を指定します。
プレビューボタンをクリックすると、「国名」から「大陸名」に変換することができています。
新しく列を作成にチェックをし、任意の列名を入力して実行します。
「国名」から「大陸名」に変換して新しい列を作成できました。
先ほど作成したチャートに戻り、色に「大陸名」を選択します。
ユニコーン企業数の上位はヨーロッパよりもアジアの方が多いことがわかりました。
国名 / コードを使った変換は上記で紹介したようにUIを使って実行できますが、裏ではcountrycode
という関数が使われています。
補足として、countrycode関数についてもご紹介します。
初めに、countrycodeの関数について紹介します。
countrycodeには3つの引数があります。
countrycode(列名, origin="変換前の値", destination="変換後の値")
1つ目の引数は変換したい列です。
2つ目の引数(origin)は元の列の値がどういうタイプになっているかを指定します。例えば、「United States」のように国の名前が値になっている場合は「country.name」を指定します。
3つ目の引数(destination)は変換したい値のタイプを指定します。例えば、地域名に変換したい場合であれば、「continent」を選んだり、国コード(ISO)にしたい場合であれば、「iso2c」を選んだりすることができます。
countrycode関数の基本を押さえたところで、実際に国名から地域名や国コードを新しい列として生成していきましょう。
もし、元のデータがISOコードで、国名に変換したい場合は下記のようにすると解決できます。
国の列ヘッダメニューから「計算を作成」を選び、「標準」を選択します。
計算を作成のダイアログが開くのでcountrycode関数を使って下記のように指定していきます。
今回は変換元のデータがISO2の国コードになっているため、「origin」に「iso2c」を指定します。 変換後のデータは国名にしたいため、「destination」は「country.name」を指定します。
完成したコードは下記のようになっています。この状態になっていたら、実行ボタンを押してください。
countrycode(Area, origin="iso2c", destination="country.name")
新しく列を作成にチェックが入った状態で、列名に任意の列名を指定し、「実行」ボタンをクリックします。
新しい列が追加され、国コード(ISO2C)に合わせて国名が生成されていることがわかります。