.MAT

MAT ファイル

MATLAB MAT-File (Data)
質問する
クイック回答

MATファイルは、ほとんどの場合、MATLABデータファイルです。これは、MATLABセッションから保存された名前付き変数(行列、配列、構造体)を保持するバイナリコンテナです。GNU Octaveで無料で開くか、PythonのSciPy(古いファイルの場合)またはh5py(実際にはHDF5であるv7.3ファイルの場合)で読み取ることができます。Excelで直接開くことはできません。最初にCSVにエクスポートしてください。

開発元: MathWorks カテゴリ: データファイル オープンスタンダード MIME: application/x-matlab-data
対応OS Windows macOS Linux
関連: .PKPASS · .DAT · .JSON · .RIS

このページの内容

19k+ 個の拡張子を索引済み
最終確認日:Jun 28, 2026

ファイルの種類がわかりませんか?

ファイルを識別ツールにドロップしてください。最初の数バイトを読み取って形式を特定します。

ファイルを識別する

MAT ファイル形式とは?

.matは、MathWorksのテクニカルコンピューティング環境であるMATLABで使用されるバイナリデータファイルで、ワークスペースの名前付き変数を保存するために使用されます。配列、行列、構造体、セル配列、文字列がすべて1つの.matファイルにパックされており、アナリストは作業セッション全体を保存し、中断したときとまったく同じ状態で再ロードできます。

この形式は数世代にわたって進化してきました。1996年に導入された主流のLevel 5コンテナは、128バイトのASCII記述ヘッダー(最初のバイトはMATLAB 5.0 MAT-fileと読み取れます)で始まり、その後に変数名、データクラス、次元、および生の配列バイトを保持するタグ付きデータ要素(miMATRIXレコード)のシーケンスが続きます。形式v7では、この同じ構造を維持しながら、変数ごとのオプションのDEFLATE (zlib) 圧縮が追加されました。MATLAB R2006b (2006) で導入されたMAT-file v7.3は、コンテナを密かにHDF5に切り替えました。そのため、一部の.matファイルはHDFViewなどの汎用HDF5ツールで開くことができますが、古いファイルは開けません。また、v7.3形式では、Level 5にあった変数あたり約2 GBという実用上のサイズ制限も撤廃されています。

MATLABでの.matファイルの保存と読み込みには、saveコマンドとloadコマンドを使用します。HDF5バックエンドを選択するには、saveに-v7.3を渡します。GNU Octaveは、Level 5とv7.3の両方をネイティブで読み書きできます。Pythonでは、scipy.io.loadmatがLevel 5を処理し、h5pyがv7.3を処理します。より単純な表形式の結果を得るために、.csvファイルとデータを交換することもできます。登録されているMIMEタイプはapplication/x-matlab-dataです。

セキュリティと安全性

リスク: LOW

.matデータファイルは受動的です。数値や文字列を保存するものであり、実行可能コードではないため、変数を確認するために開くことのリスクは低いです。2つの注意点があります:(1) MATLABの関数ハンドルやオブジェクトは.matにシリアル化でき、それらをロードすると、限定的なケースでクラスコードが呼び出される可能性があります。信頼できないソースからの.matファイルは、スクリプトで実行するデータと同様の注意を払って扱ってください。(2) v7.3の.matはHDF5ファイルであるため、メンテナンスされているHDF5/MATリーダーを使用してください。Officeドキュメントのようなマクロ形式の自動実行はありません。

形式の詳細

概要
正式名称MATLAB MAT-File (Data)別名 MATLAB data file, MAT-file
開発元MathWorks登場時期 MAT-file Level 5 format with MATLAB 5 (1996); v7.3 (HDF5-based) added in MATLAB 7.3 (2006)
MIME タイプapplication/x-matlab-data
タイプバイナリ科学データコンテナ(配列/変数)。v7.3はHDF5ベース
標準規格オープン・ロイヤリティフリー
この拡張子は以下でも使用されています…
  • 3ds Max / ゲームエンジン マテリアルファイル - 一部の3Dおよびゲームツールは、マテリアル定義(シェーダー/テクスチャ)に .mat を使用しますが、MATLABとは無関係です。
  • Audiotool .mat セッション - オンラインの Audiotool ミュージックスタジオは、プロジェクトを .mat 拡張子で保存します。
  • Microsoft Access テーブルショートカット - レガシー:Accessテーブルを起動する小さなポインタ。このサイトのデータベースに記録されている(誤った)名称です。
マジックバイト ・ ファイルシグネチャ
オフセット
000102030405060708090a0b0c0d0e0f101112
16進数
4D41544C414220352E30204D41542D66696C65
ASCII
MATLAB 5.0 MAT-file
Level 5 / v6 / v7 のMATファイルは、128バイトの記述ヘッダー内のASCIIヘッダーテキスト «MATLAB 5.0 MAT-file …» で始まります(最初の116バイトがテキストで、その後にサブシステムオフセット、2バイトのバージョン、およびエンディアンインジケータ «MI»/«IM» が続きます)。MAT-file v7.3は標準のHDF5ファイルであるため、HDF5シグネチャ 89 48 44 46 0D 0A 1A 0A («\x89HDF\r\n\x1a\n») で始まり、最初のバイトが «MATLAB 7.3 MAT-file» と読み取れるユーザーブロックを持ちます。1996年以前のLevel 4 MATファイルにはテキストヘッダーがありません。

MAT ファイルを開くプログラム

Windows4 apps
MATLAB 有料 ダブルクリックするか、load('file.mat') を使用して変数をワークスペースに取り込みます。ネイティブで完全な再現性があります。
GNU Octave オープンソース 無料のMATLAB互換クローン。load file.mat を使用して変数を読み取ります(Level 5およびほとんどのv7.3ファイルを読み取り可能)。
Python (SciPy / h5py) オープンソース v5-v7の場合は scipy.io.loadmat('file.mat')、v7.3の場合は h5py(HDF5形式)を使用します。CSVやNumPyへの変換に最適です。
HDFView (v7.3 only) 無料 v7.3の .mat をHDF5として開き、データセットやグループをブラウズします。古いLevel 5の .mat ファイルは開けません。
macOS3 apps
MATLAB 有料 ダブルクリックするか、load('file.mat') を使用して変数をワークスペースに取り込みます。ネイティブで完全な再現性があります。
GNU Octave オープンソース 無料のMATLAB互換クローン。load file.mat を使用して変数を読み取ります(Level 5およびほとんどのv7.3ファイルを読み取り可能)。
Python (SciPy / h5py) オープンソース v5-v7の場合は scipy.io.loadmat('file.mat')、v7.3の場合は h5py(HDF5形式)を使用します。CSVやNumPyへの変換に最適です。
Linux3 apps
MATLAB 有料 ダブルクリックするか、load('file.mat') を使用して変数をワークスペースに取り込みます。ネイティブで完全な再現性があります。
GNU Octave オープンソース 無料のMATLAB互換クローン。load file.mat を使用して変数を読み取ります(Level 5およびほとんどのv7.3ファイルを読み取り可能)。
Python (SciPy / h5py) オープンソース v5-v7の場合は scipy.io.loadmat('file.mat')、v7.3の場合は h5py(HDF5形式)を使用します。CSVやNumPyへの変換に最適です。

技術的詳細

詳細仕様
開発元MathWorks
形式タイプバイナリ科学データコンテナ(配列および名前付き変数)。v7.3はディスク上でHDF5を使用
形式バージョンLevel 4(レガシー、1996年以前)、Level 5(MATLAB 5-7)、v7.3(HDF5ベース、R2006b以降)
Level 5 ファイルシグネチャバイトオフセット0から始まる128バイトの記述ヘッダー内のASCIIテキスト «MATLAB 5.0 MAT-file»
v7.3 ファイルシグネチャオフセット0のHDF5マジックバイト 89 48 44 46 0D 0A 1A 0A。HDF5ユーザーブロックは «MATLAB 7.3 MAT-file» で始まる
バイト順序自己記述型:Level 5ヘッダーの126-127バイト目に格納される «MI» = ビッグエンディアン、 «IM» = リトルエンディアン。v7.3 (HDF5) は独自のバイト順序メタデータを記録
サポートされるデータ型double, single, int8/16/32/64, uint8/16/32/64, 複素数配列, char, logical, struct, cell array, 関数ハンドル
圧縮Level 5 v7での変数ごとのオプションのDEFLATE (zlib)。v7.3ではHDF5のgzip/deflateフィルターが利用可能
変数ごとのサイズ制限Level 5:変数あたり約2 GB。v7.3 (HDF5):実用的な上限なし - 2 GBを超える配列をサポート
MIMEタイプapplication/x-matlab-data (実際には application/matlab-mat や application/octet-stream も見られる)
Level 5 内部構造128バイトの記述テキストヘッダーに続き、変数名、クラス、次元、および生の配列データを格納する一連のタグ付き miMATRIX データ要素
HDF5ツールの互換性v7.3ファイルは有効なHDF5であり、MATLABなしでHDFView、HDF5 Cライブラリ、h5py、およびその他のHDF5対応ツールで開くことが可能
PythonからのアクセスLevel 5/v7ファイルには scipy.io.loadmat、v7.3ファイルには h5py または mat73 パッケージを使用
MATLAB saveコマンドフラグ-v6 または -v7 は Level 5 を選択。-v7.3 は HDF5 ベースの形式を選択(例:save('data.mat','varname','-v7.3'))
整合性チェックLevel 5にはファイル全体のチェックサムなし。v7.3 (HDF5) はオプションのデータセットごとのHDF5チェックサムフィルターをサポート
リリース日MAT-file Level 5 format with MATLAB 5 (1996); v7.3 (HDF5-based) added in MATLAB 7.3 (2006)
最新バージョンMAT-file v7.3 (HDF5-based, supports variables > 2 GB); Level 5 still used by v6/v7
オープンスタンダードはい · ロイヤリティフリー
仕様書www.mathworks.com

MAT の変換

コミュニティ Q&A

ユーザーからの質問
質問する
MAT ファイルを扱うユーザーからヘルプを得られます。OSやソフトウェアのバージョンなど、具体的に記載してください。
アカウント不要 ・ 通常1日以内に回答されます

まだ質問はありません。MAT ファイルについて最初の質問をしてみましょう。

よくある質問

MATLABなしで.matファイルを開くにはどうすればよいですか?
無料のGNU Octave(load file.mat)を使用するか、PythonのSciPy(scipy.io.loadmat、旧バージョン用)およびh5py(v7.3ファイル用)で読み取ります。これにより、MATLABのライセンスなしでデータの表示、プロット、エクスポートが可能になります。
.matファイルをCSVに変換するにはどうすればよいですか?
MATLABまたはOctaveでロードしてwritematrix/writetableを使用するか、Pythonでscipy.io.loadmat(またはv7.3の場合はh5py)とpandasのto_csvを使用します。1つの.matファイルに複数の変数が含まれる可能性があるため、各変数は独自のCSVになります。
なぜscipy.io.loadmatで.matファイルが開けないのですか?
それはおそらくv7.3ファイルであり、実際にはHDF5形式であるためloadmatではサポートされていません。代わりにh5pyで読み取るか、MATLAB/Octaveで-v7として再保存してください。
.matファイルはMATLABスクリプト (.m) と同じですか?
いいえ。.matファイルはデータ(変数)を保存し、.mファイルはMATLABのソースコードです。これらはセットで扱われることが多いですが、異なる形式です。
Excelで.matファイルを読み取れますか?
直接は不可能です。.matはバイナリであり、スプレッドシートではありません。まずMATLAB、Octave、またはPythonを使用してCSV/XLSXに変換し、それをExcelで開いてください。
MAT-fileのバージョン(v6、v7、v7.3)の違いは何ですか?
v6/v7はLevel 5バイナリ形式を使用します(v7は圧縮を追加)。v7.3はHDF5に切り替わり、2 GBを超える変数をサポートします。MATLABの-v6/-v7/-v7.3保存フラグでバージョンを選択します。

参考文献

1Library of Congress - MAT-File Level 5 File Formatwww.loc.gov
2MathWorks - MAT-File Versionswww.mathworks.com

さらに探索

データベース全体から

今週のトップ拡張子

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.BINCD/DVD Disc Image (BIN/CUE)
6.M4AMPEG-4 Audio File
7.ICSiCalendar data file
8.JSONJavaScript Object Notation file
9.RPMSGRestricted Permission Message
10.MDMarkdown Document

関連する拡張子

.PKPASSApple Wallet Pass (formerly Passbook)
.DATProgram Data File (generic)
.JSONJavaScript Object Notation file
.RISResearch Information Systems citation file
.OFXOpen Financial Exchange
.CSVComma-Separated Values

無料ファイルツール

ブラウザで動作するファイル識別および画像変換ツール。すべてお使いのデバイス上で実行されます。

ツールボックスを開く

ファイル拡張子を A-Z で閲覧