1x10構造体配列にはたくさんのフィールドがありますが、構造体配列からフィールド変数の特定の値を持つ要素を削除したいと考えています。 私は探している値を知っていて、探しているはずのフィールドを見つけたら、構造体配列から要素を削除する方法も知っています。問題は、(可能であれば)ブルートフォースの解決策、すなわち構造体配列の要素を通って私が探している値と比較するfor-loopを通らずにエレガントに識別する方法です(可能な場合)。 サンプルコード:フィールドを持つ1×10構造体の配列としてバイヤー: ID、nは、予算 とid_testなどのID値に見つけるための変数= 12フィールド値に基づいて構造体の要素を見つける
0
A
答えて
1
あなたはstruct
の配列を持っている場合は、その事実を使用することができます、ドット参照を使用すると、comma-separated listが作成されます。これを[]
で囲むと、配列の作成が試みられ、{}
に囲むとセル配列に強制されます。
a(1).value = 1;
a(2).value = 2;
a(3).value = 3;
% Into an array
[a.value]
% 1 2 3
% Into a cell array
{a.value}
% [1] [2] [3]
比較するには、気になるフィールドをどちらかのセル配列に変換して比較します。この比較によって、元の構造体にインデックスを付けるために使用できる論理配列が生成されます。例えば
% Some example data
s = struct('id', {1, 2, 3}, 'n', {'a', 'b', 'c'}, 'Budget', {100, 200, 300});
% Remove all entries with id == 2
s = s([s.id] ~= 2);
% Remove entries that have an id of 2 or 3
s = s(~ismember([s.id], [2 3]));
% Find ones with an `n` of 'a' (uses a cell array since it's strings)
s = s(ismember({s.id}, 'a'));
関連する問題
- 1. xpath他の要素の値に基づいて要素を見つける
- 2. tabindexに基づいて要素を見つける
- 3. 選択に基づいて要素を見つける方法
- 4. 配列を持つ構造体フィールドの要素ごとの平均値
- 5. 同じ行の値に基づいて値を見つける
- 6. マルチプル条件に基づく構造体配列の要素の高速アクセス
- 7. 属性に基づいて特定の要素を見つける
- 8. mongodbの名前に基づいて要素を見つける方法
- 9. サブタイプに基づいて動的にC++の構造体をキャスト
- 10. 構造体データに基づくプロットグラフ(C)
- 11. Python Selenium:要素を見つけてTextに基づいてボタンをクリック
- 12. その値に基づいて、可変キーを見つける
- 13. 構造ディレクティブ - 配置されている要素を見つける
- 14. requirejs構造体に基づいてjsファイルをバンドルします。
- 15. C++:構造体要素
- 16. VBA - 2つの基準に基づいて値を見つける
- 17. ホスト要素に基づいて動的構造ディレクティブを作成する方法
- 18. C:構造体内の構造体要素へのポインタ
- 19. 渡された構造体名の部分に基づいて構造体にアクセスする方法
- 20. 共通の構成要素については、どのように2列に基づいて値を見つけるには? SQL
- 21. Seleniumでテキストとクラスに基づいた要素を見つける方法は?
- 22. 構造体のリスト内の要素の値を変更する
- 23. 構造体 - なしで構造体要素にアクセスします。そして、 - >
- 24. セレンの深いいくつかのタグに基づいて要素を見つける方法
- 25. メンバーに基づく構造体は、私は巨大な構造体配列を持っていると私はメンバーの値に基づいて、構造体のポインタを取得するためにさまざまな機能を作成し
- 26. Mysqlは複数のデータベース(同じ構造体)の値を見つける
- 27. C# - 複雑な構造体の値で配列内のキーを見つける
- 28. 構造体にハイブサポートオプションのフィールドを行い
- 29. スキップ構造体フィールドの構造体を考えると
- 30. 構造体のインデックス行列要素member
これは私が探していたまさにです! 1つのライナーは、自分のフィールドの1つから削除する必要がある要素を特定するだけでなく、削除します。ありがとう! – Leon