問題タブ [matlab-struct]
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.
matlab - MATLAB での構造体フィールド名の反復
私の質問は次のように簡単に要約できます。
出力:
特に機能するteststruct.('a')
ので。とfields(i)
出力しans = 'a'
ます。
私はそれを理解することができません。
matlab - このテキストファイルをMATLABでリストにするにはどうすればよいですか?
テキストファイルがあり、MATLABにインポートしてリストにします。
上記のような数百のエントリがあります。それぞれが空白行で区切られています。テキストをスキャンして、各空白行の間の情報をリストの項目にできると思っていました。また、以下のようなリストができたら、一人一人を名前で調べられるようにしたいと思います。
私は次のようなものが欲しいです:
これは非常に簡単に思えますが、私はこれまでこれに問題を抱えています。何かを見落としているかもしれません。誰かアイデアやアドバイスはありますか?
matlab - MATLABで構造体のフィールドのフィールドに動的にアクセスするにはどうすればよいですか?
収容構造物の奥深くに任意の数のレベルが埋まっている可能性のあるフィールドにアクセスするという一般的な問題に興味があります。2つのレベルを使用した具体的な例を以下に示します。
構造toplevel
があり、MATLABコマンドラインから次のように定義するとします。
midlevel
フィールド名を文字列として渡すことで構造にアクセスできます。例:
しかし、同じ方法で構造にアクセスすることはできませんbottomlevel
-以下は有効な構文ではありません:
ピリオドを調べてから再帰的に繰り返して目的のフィールドを取得する関数を作成することもできますが、fieldnameToAccess
MATLAB組み込み関数を使用してフィールド値を直接取得する賢い方法があるかどうか疑問に思っています。
string - MATLABで構造体フィールド名として使用するために文字列をフォーマットするにはどうすればよいですか?
文字列からハイフン(-
)、スラッシュ(/
)、空白( )を削除して、構造フィールド名として使用できるようにします。name(i)
これは私が現在関数を使用してそれを行っている醜い方法ですstrrep
:
次のような他のバリエーションも試しました。
これを行うためのより効率的な方法は何ですか?
matlab - Matlab の別の構造体内の構造体のサイズ (R2010a 64 ビット Linux)
私は、独自の形式から一連の構造にデータをロードする Matlab API を使用しています。ファイルをロードした後のデータセットの例を次に示します。
>>fieldnames(データ(1))
ans =
>> data(1).BT_Data
ans =
>> fieldnames(data(1).BT_Data(1))
ans =
すべてをループしたいdata(i).BT_Data(j)
。私はすでにdata
罰金の長さを取得していますが、サイズ/長さを取得できませんBT_Data
(これは ごとに異なりますdata(i)
):
>> 長さ(データ(1).BT_Data)
ans =
>> size(data(1).BT_Data)
ans =
ここで期待される結果はans = 66
(または の同等の配列size()
) です。
私は構造データ形式にあまり詳しくありませんが、それが私の苦労の一部かもしれません。しかし、length(data)
うまく機能したので、なぜ機能しないのか混乱していますBT_Data
(私も試しましたBT_Data(:)
)。
私が見つけることができる最も関連性の高い以前の回答は1757250ですが、機能させることができませんでした (ここでは当てはまらないと思います)。あなたが提供できる洞察に感謝します。
------
編集------
ここでは、API を使用して現在のポイントに到達する方法について、もう少し洞察を示します。
>> system('ln -sf /opt/rwapi-matlab/lib/rwapi/smos/config/xml_rw_api.usr_conf.xml .');
setenv('XML_RW_API_HOME','/opt/rwapi-matlab/lib/rwapi');
パス (パス、'/opt/rwapi-matlab');>> 製品 = RWAPI.product('SM_OPEB_MIR_SCLF1C_20110202T013659_20110202T014642_346_060_1')
Array SMOS Matlab Interface バージョン 1.4
(c) 2010 Array Systems Computing Inc. of Canada ( http://www.array.ca )
このソフトウェアの配布または変更には、Array からの書面による許可が必要です製品 =
メソッド、イベント、スーパークラス
>> データ = prod.dataset(2)
データ =
プロパティのない RWAPI.dataset ハンドル。パッケージ: RAPI
メソッド、イベント、スーパークラス
>> データ(1)
ans =
>> data(1).BT_Data
ans =
>> データ(1).BT_Data(1)
ans =
>> whos
名前 サイズ バイト クラス 属性ans 1x1 1 論理
データ 1x19091 112 RWAPI.dataset
prod 1x2 112 RWAPI.product
matlab - 構造体データへのアクセス (matlab)
a= struct('a1',{1,2,3},'a2',{4,5,6})
1 の値を取得するにはどうすればよいですか。
エラーを返す a.a1{1} を使用しようとしています
1 にアクセスするにはどうすればよいですか? ありがとう。
編集
A = struct{'a1',[1 2 3],'a2',[4 5 6]}
どうすればアクセスできますか 1. 使用しますA(1).a1
が、1 2 3
matlab - MATLABのstepinfo出力からデータメンバーを抽出するにはどうすればよいですか?
stepinfo
関数が伝達関数(つまり)で実行される場合stepinfo(tf)
、典型的な結果は次のとおりです。
私はいくつかの調査をしましstepinfo
た。構造体を返すようです。そこで、上記の結果を変数に割り当て、を使用してそのサイズを確認しましたsize()
。これは1x1のマトリックスです。
これにより、最初に文字列に割り当ててから文字列操作を実行しない限り、この構造体から個々のデータメンバーを抽出することはできないと確信しています。
OvershootとPeakTimeの値が必要です。POとTpの式を使用せずに、そして大きな文字列の混乱なしに、これらの値を取得するための最良の方法を知っている人はいますか?
matlab - MATLAB 構造体のマージ
私は次の構造体を持っています
そのため、構造体に50を超えるフィールドがあります
同じ構造を持つ他の 3 つの構造があり、この構造をマージしたい
3つの構造体がある場合、次の構造体を取得します
arrays - MATLABで構造体配列の内容を表示してアクセスするにはどうすればよいですか?
まず、州、首都、人口で構成される独自のテキストファイルをユーザーに入力させ、次のコードを使用してこれらの値をすべて構造体配列に入れます。
私の最初の質問:構造内のすべての値を表示することは可能ですか?構造体配列を表示すると、次のようになります。
そして、私の2番目の質問:たとえば、検索する'California'
だけで、この構造の情報にアクセスすることは可能ですか?
matlab - MATLAB で 1 つのフィールドに基づいて構造体配列を並べ替えるにはどうすればよいですか?
以前、構造体配列のコンテンツを表示およびアクセスする方法について投稿しました。ファイルは、州、首都、および人口で構成されていました。現在、これらの州をアルファベット順に整理して新しい構造を作成するのに苦労しています。関数でこれを行いsortrows
、人口の値と首都をアルファベット順の州と組み合わせてみましたが、それを配列にすることはできません。ファイルに書き込めるように配列にしたい。これは私がこれまでに持っているものです:
私は自分自身を明確にしていることを願っています。