JMPの使用法 > データの読み込み > 複数ファイルの読み込み
公開日: 11/25/2021

複数ファイルの読み込み

[複数ファイルの読み込み]は、1つのディレクトリから複数のCSVデータや非構造化テキストのファイルを読み込み、積み重ねて1つのデータテーブルにします(または個々のデータテーブルとして読み込む)。読み込みの設定をスクリプトとして保存しておけば、将来データが更新された場合に、そのスクリプトを実行するだけで更新後のデータを読み込むことができます。

[複数ファイルの読み込み]は、次のようなファイルタイプに対応しています。

XLSX

CSV

TSV

DAT

TXT

SAS7BDAT

XML

JMP

JSON

PNG

JPG

GIF

[複数ファイルの読み込み]でファイルを1つだけ読み込むこともできます。表3.3で、通常のテキストの読み込みと複数ファイルの読み込み、JSLの使い分けについて説明します。

表3.3 テキスト読み込みウィザードと複数ファイルの読み込みの使い分け

読み込むファイル

1つのファイル

複数のファイル

CSV、TSV、DAT

テキストの読み込みでは、プレビューウィザードを使って、列に名前をつける、データの表示形式を選択する、データのサブセットを読み込むといったことができる。

複数ファイルの読み込みでは、類似のファイルを自動的に積み重ねて1つのテーブルにできる。表示形式は後で変更可能。

非構造化テキスト

複数ファイルの読み込み。場合によってはJSLのLoad Text File()が使用可能。

複数ファイルの読み込み

100MBを超える
大容量ファイル

いったん通常の手順で読み込みを行うと、次回以降の読み込みは「ソース」スクリプトによりすばやく実行できる。

複数ファイルの読み込みは並列処理が可能で、テキストの読み込みと比べてずっと速い場合がある。

形式がわからない

テキストの読み込みは、形式を識別できる場合がある。読み込む前にプレビューウィザードで結果を確認できる。

複数ファイルの読み込みは形式の識別を行わない。ユーザがタブなどの区切り文字を指定する必要がある。プレビューは用意されていないが、[ダイアログを開いたままにする]をオンにすれば、異なる設定で何度も読み込むことが簡単に行える。

画像

JSLのOpen()関数で開ける場合もある。

複数ファイルの読み込みは、PNG、JPG、GIFに対応。画像の列を含むテーブルが作成される。

JMP、XLSX、JSON

JSLのOpen()関数で開ける場合もある。

複数ファイルの読み込みは、JSLのOpen()を使ってJMP、XLSX、JSONファイルを開き、必要があれば連結する。JMPテーブルを開く際、テーブルスクリプトや列の計算式が維持されないため、それらが必要な場合は、Files In Directory()Open()を組み合わせて読み込まなければならない。

複数ファイルの読み込みは、以下の手順で操作します。

1. 読み込みたいファイルをすべて1つのディレクトリに入れます。

ここでは、JMPのSamples/Import Dataフォルダにあるデータを使用します。

2. [ファイル]>[複数ファイルの読み込み]を選択します。

3. JMPのSamples/Import Dataフォルダを選択します。

4. [名前または拡張子によってファイルを選択]ボックスに「UN*.csv」とタイプし、Enterキーを押します。

ここでは、名前がUNで始まるCSVファイルを読み込みます。

「ファイル」リストが更新され、指定した条件に合うファイルが表示されます。

複数のファイル名と拡張子を指定するには、セミコロンで区切って入力するか、[拡張子の追加]をクリックして拡張子を選択します。

図3.19 選択されたCSVファイル 

Selected CSV Files

最後の更新以後にディレクトリ内のファイルに変更があると、更新ボタンImage shown hereが点滅します。

5. 必要に応じて、データテーブルに列を追加するオプションを選択します。

デフォルトでは新しい列は追加されませんが、読み込んだファイルの名前を表す列を追加しておくと便利な場合があります。[ファイル名の列を追加する]を選択します。

メモ: 環境設定の[テキストデータファイル]には似た項目がありますが、これらはCSV設定には影響しません。

6. この例で読み込むCSVファイルには同じ列が含まれているので、[類似したファイルを連結する]をオンのままにします。

7. [読み込み]をクリックします。

JMPでは、連結するファイルを、ファイル名、ファイルサイズ、更新日時の条件で選択できます。同じ列見出しを含むファイルは、同じデータテーブルに読み込まれます。一致しない列がある場合は、別々のデータテーブルに読み込まれます。

図3.20 読み込まれたCSVデータ 

Imported CSV Data

メモ:

隠しファイルを読み込むには、[非表示のファイルを含める]チェックボックスをオンにします。

サブディレクトリ内にあるファイルを読み込むには、[サブフォルダを含める]チェックボックスをオンにします。

サイズが特定の範囲内にあるファイルを読み込むには、[サイズによってファイルを選択]チェックボックスをオンにすると、ファイルサイズの上限と下限を入力できます。

これは、特定のサイズを超えるファイルを読み込みたくない場合に便利です。

ファイルサイズはkB(キロバイト)で指定します。1kBは1,000バイトです。

特定の期間内に変更されたファイルを読み込むには、[更新日時によってファイルを選択]チェックボックスをオンにし、カレンダーボタンImage shown hereをクリックして、その範囲を指定します。

(非構造化テキストファイル)ファイルの構造に基づいて、必要な場合は[テキスト文書, ファイル全体をテーブルの1行に]または[テキスト文書, ファイルの1行をテーブルの1行に]を選択します。

メモ:

この2つのオプションは、XLSX、JSON、JMPのファイルには使用できません。

[テキスト文書, ファイル全体をテーブルの1行に]を選択すると、ファイル全体が読み込まれ、最初のデータ行より前の行もスキップされません。

JMPは、読み込めなかったファイル(たとえばSASデータセットなど)がある場合、それらのリストを1つのデータテーブルとして作成します。

引用符の付け方が異なる構造化データの読み込み

書き出し時の設定により、フィールドが引用符以外の記号で囲まれているようなことがあります。その場合、その記号をCSV設定で指定することができます。

また、CSVファイル内で、引用符を2つ続ける代わりに、バックスラッシュなどのエスケープシーケンスが含まれていることもあります。その場合も、CSV設定で指定することができます。

ヒント:

[ダイアログを開いたままにする]は、デフォルトではオフですが、読み込みのテストをするときにはオンにしておくと便利です。オンにすれば、ファイルを読み込んで結果を確認し、必要に応じてソースファイルを編集し、もう一度同じ設定でファイルを読み込むといったことができます。

サポートされていないファイルを読み込もうとすると、「@ 読み込まれなかったファイル」というデータテーブルが作成されます。「ファイル」テーブルスクリプトにファイル名のリストが含まれています。スクリプトを右クリックし、[編集]を選択すると確認できます。読み込まれなかったファイルの名前をデータテーブルの列として出力するには、「複数ファイルの読み込み」ウィンドウで[ファイル名の列を追加する]をオンにします。

「ファイル名」のリストを右クリックし、[列の値で並べ替え]を選択すると、「ファイル名」リストの並び順を変更できます。

選択したフィルタに一致するファイルがない場合、[読み込み]ボタンはクリックできなくなります。

テキストエクスプローラで使用するようなデータ(テキスト文書)のために用意されている2つのオプション(下部中央のラジオボタン)のいずれかを選択すると、CSV設定が自動的に変更されます。区切り文字は適用されず、すべてのデータが1つの列に読み込まれます。また、ファイル全体を1行に読み込む場合は、行の終わりの文字も使用されなくなります。ユーザがCSV設定を変更することもできます。自分で変更する場合は、必ず[列見出しがある]をオフにし、「データの開始行」を1に設定してください。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).