メインコンテンツ

インポート ツール

ファイルからデータをインポート

説明

インポート ツールは、広範なファイル タイプのデータをプレビュー、選択、インポートするための対話型のツールです。コードを記述することなく、テキスト ファイル、スプレッドシート、MAT ファイル、メディア (イメージ、オーディオ、ビデオ) ファイル、科学データ (HDF5 および netCDF) ファイルから MATLAB® ワークスペースにデータをインポートできます。

このツールを使用すると、以下のことができます。

  • ファイルからインポートするデータをプレビューする。

  • インポートする行、列、変数を選択する。

  • インポートする変数の名前や型の指定、インポート処理用の区切り記号の指定など、インポート オプションをカスタマイズする。

  • インポートできないセルや空のセルを置き換えるか除外する。

  • HDF5 ファイルや netCDF ファイルの構造を調べる。

  • 類似ファイルからのデータのインポートを自動化するために再利用可能な MATLAB コードまたは関数を生成する。

Import Tool

インポート ツール を開く

  • MATLAB ツールストリップ: [ホーム] タブの [変数] セクションで、[データのインポート] をクリックします。

  • MATLAB コマンド プロンプト: uiimport または uiimport(filename) を入力します。filename は、ファイルの名前を指定する string スカラーまたは文字ベクトルです。

すべて展開する

インポート ツールを使用して、テキストまたはスプレッドシート ファイルからデータを table として対話的にインポートします。

インポート ツールは、インポートするデータに関する詳細を自動的に検出します。これらのフィールドを調整して、インポート オプションをカスタマイズできます。次に、[選択のインポート] ボタンをクリックします。ワークスペースに新しい table が表示されます。

たとえば、テキスト ファイル textdata.txt のデータを table としてインポートします。

Sample text file

インポート ツールは、列の区切り記号がコンマであり、最初の行に変数名が含まれ、列に数値、テキスト、categorical 型があることを認識します。

uiimport("textdata.txt")

Import Tool displaying the contents of textdata.txt as a table. The Variable Names Row fields is set to 3, the selected cells are A4:A16,C4:C16, and the first three variables are numeric.

インポート ツールを使用して、グラフィックス ファイルからイメージ データを配列として対話的にインポートします。

インポート ツールには、インポートするイメージ データの名前、サイズ、クラス、値の各フィールドと、プレビューが表示されます。次に、[インポート] をクリックして、イメージ データをインポートします。ワークスペースに配列が表示されます。

たとえば、イメージ ファイル peppers.png のデータをインポートします。

uiimport("peppers.png")

Import Tool showing a table with columns to view the name, size, class, and value of the image to import and a preview of the image

インポート ツールを使用して、MAT ファイル内の変数を対話的にインポートします。

インポート ツールには、MAT ファイル内の変数が表示されます。[すべて選択] チェック ボックスを選択し、MAT ファイル内の 3 つの変数をすべてインポートします。あるいは、MAT ファイル内の変数のサブセットのみをインポートするには、table でインポートする変数のチェック ボックスを選択します。次に、変数をインポートするために、[インポート] をクリックします。変数がワークスペースに表示されます。

たとえば、MAT ファイル seamount.mat 内の変数をインポートします。

uiimport("seamount.mat")

Import Tool showing a Select all check box and a table with columns to select variables using check boxes, and view each variable's name, size, class, and value

インポート ツールを使用して、スカラー構造体のフィールドにデータを対話的にインポートします。

既定で、インポート ツールはデータを個別の変数としてインポートします。そうではなく、構造体のフィールドにデータをインポートするには、uiimport 関数の出力引数を指定してインポート ツールを開きます。次に、[インポート] をクリックして構造体を作成します。ワークスペースに構造体が表示されます。

たとえば、MAT ファイル seamount.mat 内の xyz 変数をスカラー構造体のフィールドとしてインポートします。

S = uiimport("seamount.mat")
S = 

  struct with fields:

    x: [294×1 double]
    y: [294×1 double]
    z: [294×1 double]

インポート ツールを使用して、クリップボードからスプレッドシート データをインポートします。

ファイルからスプレッドシート データをインポートするだけではなく、クリップボードからスプレッドシート データをインポートすることもできます。まず、スプレッドシート データを選択してコピーします。uiimport 関数に pastespecial オプションを指定して、クリップボードにあるデータに対してインポート ツールを開きます。

uiimport -pastespecial

インポート ツールを使用して、複数のテキスト ファイルからデータをインポートする関数を対話的に生成します。

インポート ツールを使用してファイルからデータをインポートするときに、インポート操作を表す関数を生成できます。その関数を呼び出して、他のファイルからデータをインポートできます。たとえば、一連のテキスト ファイルからデータをインポートします。

まず、インポート ツールを開き、ファイル セレクターからインポートするテキスト ファイルを 1 つ選択します。次に、[選択のインポート][関数の生成] をクリックします。インポート ツールによって次の抜粋と類似した関数が生成され、エディターで関数が開きます。

function textdata = importfile(filename,dataLines)
%IMPORTFILE Import data from a text file
...

関数を保存します。その後、その関数を呼び出して、類似ファイルからデータをインポートできます。たとえば、類似テキスト ファイルからのデータを含む cell 配列を作成します。

numFiles = 25;
dataLines = 2;
myData = cell(1,numFiles);

for fileNum = 1:numFiles
    fileName = sprintf("myfile%02d.txt",fileNum);
    myData{fileNum} = importfile(fileName,dataLines);
end

メモ

イメージ、オーディオ、ビデオ ファイルなど、一部のファイル タイプでは、インポート操作用のコードがコマンド ウィンドウで自動的に生成されます。

プログラムでの使用

uiimport は、ダイアログを開いて、ファイルまたはクリップボードからデータを対話的にプレビューおよびインポートします。

uiimport(filename) は、指定されたファイルをインポート ツールで開きます。filename は string スカラーまたは文字ベクトルとして指定します。

ファイルが MATLAB パス上にない場合は、絶対パスを指定します。たとえば、uiimport("C:\Documents\textdata.txt") は指定されたファイルをインポート ツールで開きます。

uiimport -file は、最初にファイル選択ダイアログを提示します。

uiimport -pastespecial は、最初にクリップボードの内容を提示します。

S = uiimport(___) は、結果の変数をスカラー構造体のフィールドとして格納します。

制限

  • インポート ツールでは、Family ドライバー、Multi ドライバー、または Split ドライバーを使用する HDF5 ファイルからのデータのインポートはサポートされません。これらの 3 つのドライバーのいずれかを使用するファイルからデータをインポートするには、MATLAB 高水準 HDF5 関数 (h5readh5readatt など) または MATLAB 低水準 HDF5 関数のいずれかを使用します。

ヒント

  • 関数内でファイルを対話的に選択してインポートするには、出力引数を指定して uiimport 関数を使用し、インポート ツールを開きます。これにより、データはベース ワークスペースにインポートされるのではなく、関数ワークスペースにインポートされるようになります。

バージョン履歴

すべて展開する