【AlteryxTips】文字化けなしでデータを読み込む方法(コードページの変換について)

 

Alteryxで文字化けなしでデータを読み込む方法(コードページの変換について)をご紹介します

 

Alteryx Designerのローカライゼーション設定を英語にした状態でCSVファイルを読み込もうとすると、Code Pageの設定がデフォルトで「ISO 8859-1 Latin I」となっているため日本語のファイルは文字化けしてしまいます。

コードページ不一致

また、ローカライゼーション設定を日本語にしていたとしても、UTF-8のファイルを読み込もうとすると良くて文字化け、もしくはそもそも読みこめずエラーとなってしまうことがあります。

他にも、古いバージョンのAlteryx Designer(2018.1より以前の日本語対応前のバージョン)では、そもそもShift-JISでの読み込みすら対応していないため、日本語ファイルは全て文字化けとなってしまいます。

本記事では、このような際の回避方法をご紹介します。

 

文字化け回避手順

方法としては、2通りの手段がありますが、基本的には1でやってみて、できなければ2の方法を使うのがセオリーです。

1.データ入力ツールで正しい文字コードを設定する

2.複数行フォーミュラを使ってワークフロー内で変換する

 

1.データ入力ツールで正しい文字コードを設定する

まずは、スタンダードな方法ですが、データ入力ツールで読み込む際に読み込むファイルにあわせた正しいコードページを指定することで、基本的には文字化けなく読み込みが可能です。

コードページを合わせる

日本語の場合は、デフォルトの「ANSI/OEM - 日本語Shift-JIS」(CP-932)もしくは「Unicode UTF-8」(CP-65001)のどちらかでたいていは事足りるかと思いますが、そうでないケースは2の方法を使う必要があります。

 

2.複数行フォーミュラを使ってワークフロー内で変換する

文字コードがEUC-JP(UNIXで使われている形式)の場合、そもそもデータ入力ツールのコードページにリストアップされていないため、こちらの方法を使う必要があります(もしくはDesignerの古いバージョンで日本語対応していない場合も同様の方法を行います)。

手順は以下のとおりです。

1.「ISO 8859-1ラテン語I」でまず読み込む(「先頭行にフィールド名を含める」のチェックははずす)

2.「複数行フォーミュラ」ツールで文字コード変換を行う

3.「動的リネーム」ツールでフィールド名を取得する

コードページ変換ワークフロー

1.「ISO 8859-1ラテン語I」でまず読み込む

まず、以下の設定で読み込みを行います。

データ入力設定

No オプション名 設定内容
先頭行にフィールド名を含める チェックなし
コードページ ISO 8859-1ラテン語I

 

2.「複数行フォーミュラ」ツールで文字コード変換を行う

次に「複数行フォーミュラツール」を使い、以下の設定を行います。

複数フィールドフォーミュラ設定

No オプション名 設定内容 コメント
フィールドを選択 全てにチェックを入れる 文字化けしている日本語のフィールドにチェックが入っていれば良いです
出力タイプを変更 チェックを入れて、V_WStringを選択 デフォルトだと「V_String」となっており、英数字しか格納できないデータタイプになっているため、「V_WString」に変更必要。この設定を行っていないと文字化けのままです(見落としがちになるポイント)
サイズ 大きめの数値推奨 ファイル読み込みの「フィールド長」の設定より小さくなければオッケーですが、文字が切れないサイズであることが必須です
以下の式を設定 65001の部分は、別表 の通り文字コードによって変わります。

例:

  • UTF-8 65001
  • Shift-JIS 932
  • EUC-JP 20932

式:入力データがUTF-8形式の場合

ConvertFromCodePage([_CurrentField_], 65001)

 

3.「動的リネーム」ツールでフィールド名を取得する

最後に、「動的リネーム」ツールでフィールド名を取得します。

動的リネーム設定

No オプション名 設定内容 コメント
名前の変更モード データの最初の行からフィールド名を取得 -
指定フィールド すべてチェックを入れる -

 

バージョンが11.8以前の古い頃のバージョンから使っている方にとっては馴染み深い内容ですが、ローカライズが進んだバージョンだとめったにこの方法にお世話になることもなくなりました・・・。

 

サンプルワークフローダウンロード

CodePage_Sample 

 

なお、本記事は過去にCommunityでも回答済みの内容となります。こちら

 

※Alteryx Designer 2020.4.5.12471時点の情報となります

Alteryxの導入はぜひKCMEで!

セルフサービスデータ分析ツール「Alteryx」は4週間無償トライアルが可能です。

製品に対する操作方法、技術的な質問などは導入前・導入後に関わらずメールにてお答えします。また、Alteryxを用いた環境構築、開発、ヘルプデスク対応、ハンズオン、トレーニング、ワークフロー作成なども承りますので、お気軽にご相談ください。

おすすめの記事