問題タブ [textscan]

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.

0 投票する
3 に答える
1785 参照

matlab - Matlab:空白を含むテキストスキャン

次のようにフォーマットされたテキストファイルがあります。

textscanで読み込もうとしているのですが、空白の扱いがわかりません。私は試した:

CMX と COP の間のスペース、およびカンマ間の空白が原因である可能性があります。助言がありますか?

CMX COP は 1 つのことです。スペースを削除しても問題ありません。

0 投票する
2 に答える
5264 参照

matlab - 未知数の変数と未知数の実行を読み取るためのテキストスキャン

次の形式のcsvファイルを読み込もうとしています

また、ファイルに含まれる変数 (行) や実行 (列) の数を事前に知ることはできません。

テキストスキャンを機能させようとしていますが、何を試しても、すべての変数名を分離することも、列ごとのセル配列を取得することもできません。これは私が試してきたことです。

誰か提案がありますか?

0 投票する
1 に答える
466 参照

matlab - Matlab で textscan を使用してデータを出力する

いくつかのヘッダーと数値データを含む大きなテキスト ファイルがあります。ヘッダー行を無視して、特に列 2 と列 4 のデータを出力したいと考えています。

サンプルデータ

次のコードを使用してみました。

0x1 セルの出力しか得られない

0 投票する
2 に答える
13150 参照

matlab - Matlab - テキスト スキャンの使用に役立ちます。コメントとヘッダー列を無視する方法は?

テキスト スキャンの使用についてサポートが必要です。次の形式のデータを読み取ろうとしています。

私が気にかけているのは、「比伝導率」と「日付」の 2 つだけです。(それぞれ 3 列目と 7 列目)

次のコードを使用して、一貫してこれを行うことができました。

ただし、「commentstyle」を使用してコメントを無視できることがわかりました。複数のファイルを読んでいるときに、27 行のコメント行がないファイルに遭遇することがあるため、これは重要です。これにより、私のプログラムはエラーをスローします。

textscan コードを調整してコメント行を無視し、2 つのヘッダー行をスキップする方法を教えてもらえますか?

私が提供したサンプル コードが複雑である場合は申し訳ありませんが、基本的に私のエラーは次の 1 行のコードにあります。

(タブ区切りファイルの例をダウンロードして使用する場合は、このリンクを使用してください: こちら

ありがとうございました!

答え:


TryHard に感謝します。それは良いアプローチでしたが、私は以前に行っていたことに近づきたいと思っていました。どうやら区切り文字が外れていたようです。

0 投票する
0 に答える
491 参照

matlab - MATLAB - ファイル全体が処理されるまで実行される繰り返し textscan プロセスの作成

私はMatlab初心者のようなものだと言って始めるので、この質問が以前に尋ねられた場合は申し訳ありませんが、必要な答えを見つけることができませんでした.

いくつかの大きな降雨レーダー ファイル (5 ~ 20 GB) を処理するコードに取り組んでいます。24 時間ブロックでデータを読み取り、不要なポイントを削除するようにコードを調整しました。以下のように:

このコードが、私が達成しようとしていることを明確にしていることを願っています。そうでない場合は、お気軽にお問い合わせください。

基本的に、コードのこのセクションを作成する必要があります。

ファイル全体が処理されるまで繰り返します。これは約2000回の繰り返しになるはずです。また、このコードは現時点では非常にラフで準備ができており、それほど洗練されていないことも承知しています。

あなたが助けてくれることを願っています。

一番

サム

アップデート:

掘り下げた後、この問題は解決され、For ループで単純化されました。以下のコード例をご覧ください。

0 投票する
1 に答える
112 参照

matlab - Matlab テキスト ファイルの区切り記号とヘッダーの読み取り

次のようなファイルがあります。

ファイルはさらに長く続きますが、一般的な考え方は、ヘッダーが 2 行あり、データが '|' で区切られているということです。

ヘッダー行をスキップしようとしましたが、うまくいきませんでした。ヘッダーが削除されたときにファイルの残りの部分を読み込むために、次のスクリプトを試しました。最初の行の最初の 2 列は機能しましたが、残りは空でした。

ヘッダーをスキップしてデータのすべての行を読み取るには、コードをどのように編集すればよいですか? %d 個のパーツが正しくないと確信しています。

0 投票する
2 に答える
405 参照

matlab - matlabでtextscanを使用して、特殊文字を含む行をnanに置き換えます

次の行を含む textscan を使用してファイルを読み込もうとしています

1.0 2.0 3.0 ? 6.0 5.0

11.0 12.0 13.0 15.0 16.0 15.0

21.0 22.0 23.0 25.0 26.0 25.0

31.0 32.0 33.0 ? 36.0 35.0

疑問符をナンに置き換えるにはどうすればよいですか?

0 投票する
1 に答える
244 参照

matlab - Matlab を使用した集計データ ファイルの堅牢な読み取り

測定装置によって生成されたテキスト ファイル内の数値データにアクセスしようとしています。ファイルは文字列と数字が混在しており、項目はタブで区切られています。長方形ではないため、dlmread などの matlab のファイル読み込み関数には適していません。ファイルをエクセル スプレッドシートに変換して xlsread で読み込むことはできますが、何百ものファイルを扱っているため、これは選択肢ではありません。

ファイルは次のようになります。

次の点に注意してください: - Scan #-5 の前の値は、ファイル内に何回の繰り返しがあるかを示します - AX/37 は、1 スキャンあたりの行数を示します。- 「VOID」要素は、該当する場合は実際の数値に置き換えられ、その逆も同様です。

存在する値を抽出できるようにしたいと考えています。スクリプトは、トレースのサイズ、繰り返しの回数、または値が数値であるか「無効」であるかに依存しません。

これまでのところ、他のトレッドで与えられたヒントに基づいて、ファイルの行で配列を作成し、次のように各行の最初の 2 つの数字を抽出することができました。

Traces は、行ごとに最大 2 つの最初の数値を持つ各行の配列を含むセルです。2 が見つかった後、フロート項目の検索を停止する理由は謎です...各行の数字と文字列のシーケンスは異なる可能性があるため、指定したくありません。

どんな助けでも大歓迎です。