問題タブ [matlab-load]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
string - セルからのデータでロードを使用する
私のコードでは、セルからのエントリでロードを使用しようとしていますが、機能していません。以下の私のコードの部分は、文字列の3次元配列を生成します。文字列は、ファイル名へのパスを表します。
コードの次の部分では、loadを使用して、上記のコードで定義されたパス名を使用してファイルを開きます。私は以下のコードを使用してこれを行います。
アイデアは、DummyがDataPathから文字列コンテンツを取り出して、ロードで使用できるようにすることです。これを行うことで、ダミーはセルではなく文字列として定義されると思いましたが、そうではありません。読み込み時に使用できるように、DataPathから文字列を引き出すにはどうすればよいですか?ありがとう。
データは複数のフォルダにあるため、この方法でデータをロードする必要があります。必要に応じてさらに多くのコードを投稿できますが、複雑です。
matlab - MATLAB で 1 ステップだけで、類似した名前や文字列を持つ 100 個のファイルを読み込むにはどうすればよいですか?
ディレクトリに 100 個の ASCII ファイルがあり、すべて次のように名前が付けられています。
int_001.ASC
int_002.ASC
int_003.ASC
.
.
.
int_099.ASC
int_100.ASC
次のように動作するはずです。
私の質問は次のとおりです。どうすれば100回書くのを避けることができimportdata
ますか? 最初の文字列だけを書き込んでから、すべてのデータをアップロードする方法はありますか?
ありがとう
matlab - 無関係なファイルに書き込むと、ロード機能が非常に遅くなるのはなぜですか?
特に遅いコードのデバッグにしばらく時間を費やし、MATLABプロファイラーによって完全に破棄されました。これは私には大きなバグのように見えるので、誰かがここで起こっていることに光を当てることができるかどうか疑問に思いました。
問題を引き起こすコードは次のとおりです。
最初のfor
ループは0.239739秒かかり、2番目のループは4.411179秒かかります。
for
ここで、2番目のループの例に示されているように、結果ごとにログファイルを作成するというずさんなアイデアを認識していることを明確にする必要があります。これは、クラスターで実行していて、出力、関数の進行状況を安価に表示したかったのですが、これがボトルネックであることがわかりました。私はそれで大丈夫です。
ただし、私の問題は、MATLABプロファイラーが次のように言っているため、間違った行を最適化するために1日を費やしたことです。
の行の最後の3行を実行するのにかかる時間全体が配置されload
ます。私の実際のプログラムでは、load
は他のビットにそれほど近くなかったので、プロファイラーを信用しないことを決定するまで、それは私には起こりませんでした。私の質問は:ここで何が起こっているのですか?なぜこれが起こったのでしょうか。このような奇妙な動作に注意する必要がありますか?
私はMATLAB2011aを使用しています。どうもありがとう。
編集:私はいくつかの混乱、謝罪を引き起こしているようです。状況は次のとおりです。
- 上に示した2つの
for
ループは同じですが、2番目のループの下部に3行あり、反復ごとに一時ファイルに書き込みます。 - 2番目のループの実行にはかなり長い時間がかかります。結論として、これらの最後の3行は速度の向上のせいです。それらが削除されると、コードは再び高速になります。
- ただし、プロファイラーは、2番目のループの時間をこれらの最後の3つのステートメントに帰することはありません。代わりに、私の
load
関数呼び出し(最初のループとまったく同じ呼び出しで、より高速でした)が0.2秒ではなく4秒かかっていることがわかります。したがって、最後の3行が存在すると、load
が遅くなるか(私はこれを無視しましたが、それは可能性もありますか?)、MATLABプロファイラーが誤って報告しているload
のに4秒かかっているのは明らかです。
いずれにせよ、非常に奇妙なことが起こっているように私には思えます。
編集:自分で答えたようです。以下を参照してください。誤解を招くため、タイトルを変更しました
matlab - .mat ファイルからのデータの抽出
4 つの変数を含む .mat ファイルがあります。各変数 (A、B、C、D) は、<59145x1 double> を読み取るセルです。各変数に 59145x1 の配列があることはわかっていますが、それらにアクセスする方法がわかりません。それぞれにこの 1 つのセルしか表示されません。
誰でも助けることができますか?
ティア
matlab - matlabでファイル.datをロードするときのエラー
Matlab でファイル .dat を読み込もうとすると問題が発生します。音声データに関する私のファイル .dat:
エラーがあります:
??? Error using ==> load ASCII ファイル C:\Program Files\MATLAB\R2010b\bin\doan\y.dat の 1 行目の列数は
、前の行と同じでなければなりません。
==> 8 負荷 y.dat での twosubband のエラー。% 音声データの読み込み
理解できない。修正を手伝ってください。
arrays - matfile エラーの読み込み部分: 'VARName' が存在しません
http://www.mathworks.com/help/matlab/ref/matfile.htmlに示されているように、配列の一部をmatfileにロードしようとしています
ただし、loadedData = matObj.varName(indices) を使用すると、「varName」が存在しません
誰かが何がロンか知っていますか?
matlab - 処理のために複数の .mat ファイルを読み込む
MatLab では、(大量のコードを実行した後) 複数の .mat ファイルが .mat ファイルに出力されます。各 .mat ファイルの実際の matlab 名が呼び出されますが、コマンドをresults
使用してそれらを別のファイルに書き込んでいます。save
ファイルの小さなサブセットは次のようになります。
ここで、各テストの結果を比較したいと思います。つまり、4 つの .mat ファイルすべてを読み込んで、それらをグラフに結合する必要があります。1 つのファイルを読み込んで最終的なグラフを作成することは問題ありません。しかし、すべてのファイルが同じ matlab name を持っているため、results
それらを繰り返しロードすることはオプションではありません (少なくとも、私がまだ知っているものではありません)。
これらすべてのファイルをロードして、構造内の異なる変数に保存する方法はありますか (1 つのテスト セットのみに関して)。これをすべて手作業で行うのは大変な作業だからです。
この方法を使用しようとしました: Load Multiple .mat Files to Matlab workspace but I get Invalid field name
error onloaded.(char(file)) = load(file);
matlab - matlab の 2 つの異なるフォルダーからファイルを読み込む
こんにちは、私は matlab の初心者です。私のラップトップには 2 つの異なるフォルダーがあり、それぞれに約 400 の異なるファイルが含まれています。これらすべてのファイル (最初のフォルダーから 400 個、2 番目のフォルダーから 400 個) をロードしたいのですが、そのように試みましたが、うまくいきません:
次に、folder1 から最初のファイルを取得し、folder1 の最初のファイルから差し引いて、新しいフォルダーに保存します。そして、他のすべてのファイルに対してそれを行います...など、専門家が私に提案をしてくれます!! 前もって感謝します。