問題タブ [cell-array]
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.
arrays - 警告なしにセルを格納するセルの配列
ファイルを(1行ずつ)読み込んで、<1x175セル>として返しています。これは大きな計算を伴う大きなファイルなので、分割します。事前割り当てによってコードが高速化されることを理解しているため、ファイルからデータを格納するための配列を作成しました。
私は過去に警告なしでこの作業を行いました:入力引数はスカラーでなければなりません。しかし、私はそれをどのようにしたかを忘れました...これはうまくいくようですが、賢明ではないかもしれないと感じています。これがどのように見えるかです。
したがって、i dataInput(2)の場合、2番目の<1x175セル>が返されます。
matlab - セルを2倍に変換
どうすれば次のように変換できますかC
?double
私は試しましstr2double(C)
た。それは戻ります:
matlab - セル配列内のすべての (一意ではない) 要素のインデックスを、それらが 2 番目の (並べ替えられた一意の) セル配列に表示されるときに検索します
セル配列内の文字列ごとに、セル配列内A
のその文字列と一致するインデックスを取得しようとしていますB
。A
値が繰り返されますが、そうでB
はありません。
出力
しかし、私は取得したいです
できればワンライナーで。ベクトルのサイズが異なるため、 ismember の代わりに strcmp を使用することもできません。
ベクトルには実際には日付文字列が含まれます。論理インデックス マトリックスではなくインデックスが必要です。インデックス作成に使用しないように数値に関心があります。
どうすればいいのですか?
matlab - セルとMATLABの要素を乗算するMatlab
1xmのセル配列A{}
があり、配列の各要素はNxN行列と行列W(N1,m)
です。
計算する必要があります
そして私は次のことをしています:
またはもっと視覚的に:
ループを使用せずにそれを行う方法はありますか?
Matrix W(let's say N1=2)
|W11 W12||A{1,1}| = |W11*A{1,1} + W12*A{1,2}|
|W21 W22||A{1,2}| = |W21*A{1,1} + W22*A{1,2}|
string - 文字配列のフォーマット
重複の可能性:
MATLABで時系列を使用して日/時間ごとに値をカウントする
これは初歩的な質問ですが、見つかりません。
私は3000x25の文字配列を持っています:
2000-01-01T00:01:01+00:00
2000-01-01T00:01:02+00:00
2000-01-01T00:01:03+00:00
2000-01-01T00:01:04+00:00
これらは明らかに時代です。配列を 3000x1 配列に再フォーマットしたいと考えています。各行を配列内の 1 つのエントリとして再定義するにはどうすればよいですか?
(繰り返しますが、これは簡単です、すみません)
matlab - 組み合わせを持つ構造体の for ループ
ターゲット ベクターを作成したい。私はいくつかの問題を抱えています。私が欲しいのは、T からターゲットへの 18 個のオブジェクトの 3 つのすべての組み合わせです。しかし、その組み合わせを生み出すことはできません。組み合わせごとに個別に機能していますが、「forループ」は機能していないようです。
上記のコードは、Target(:,:,i) から (:,:,i) を削除し、1,2,3 ... などを T.(TNames{idx( i,1)})..T.(TNames{idx(i,2)}) および T.(TNames{idx(i,3)})
さまざまな代替手段を試しましたが、この問題を解決できません.ターゲット <3*859 セル> を作成することさえできましたが、ニューラル ネットワークには受け入れられません。ニューラルネットが適切に機能するには、<1*859 セル> である必要があります..では、誰かこの問題を解決するのを手伝ってくれませんか?
私もこれを試しました:
T は <1*1 構造体> であり、その中にそれぞれ 859 行の 18 個のフィント (金融時系列) オブジェクトがあり、列の数が異なります (各フィント オブジェクトの 1 から 4 列の範囲)。..これらすべてのフィント オブジェクトを変換しましたfts2mat コマンドで行列に変換します。
これで、各列範囲に識別可能なフィント オブジェクトを持つ新しいマトリックス <32*859 double> ができました。つまり、各列の最初の 4 つのエントリが最初の fints オブジェクトに属し、次の 3 つのエントリが 2 番目の fints オブジェクトに属していることがわかります。
最終的に <859*1 cell> または <1*859 cell> (より正確には)適切なトレーニングのためにそれをニューラルネットワークに提供します...
3 の各組み合わせには 3 つのフィント オブジェクト エントリが含まれ、各フィント オブジェクトは異なる番号を持つ必要があるため、このタスクはインデックス作成を通じて実行する必要があります。列の。そして、816 通りの組み合わせで毎回各 fints オブジェクトのすべての列をガーブし、それら 3 つの fints オブジェクトを連結する必要があります。各fintsオブジェクトのすべての列を取得して行に配置します。
要するに、<1*859 セル> が必要で、そこには (私の T 構造体から) 3 つのフィント オブジェクトの 816 の異なる組み合わせがあり、各組み合わせには 3 つのフィント オブジェクトが含まれ、各組み合わせは <1*859 セルでなければなりません。 > 適切なトレーニングのためにニューラル ネットワークに提供します。NN は異次元セルを取らないので..
よろしくお願いします
matlab - 行全体を削除し、マトリックスの次の行をマージします
私は行列A =を持っています
列 1 に '10'、'15'、'20'...'55' 以外、または列 1 に '@NA' 以外がある場合、マトリックス A の行全体を削除する新しいマトリックス B を取得するにはどうすればよいですか?列 3 、および次の修飾された行を MERGE します。
A を例にとると、列 3 に「@NA」があるため、行 1 と 4 を削除する必要があります。列 1 に「00」があるため、行 3 も削除する必要があります。
マトリックス B は、
B は 3*3 セル行列です。
どんな提案でも大歓迎です!
matlab - 異なる型の要素を含む cell 配列内の文字列を検索します
可変引数を取る関数があります。これらの引数はパラメーターと値のペアでvarargin
あり、奇数インデックスの要素がすべて文字列 (パラメーター) であるセル配列も同様ですが、偶数インデックスの要素は文字列、数値、または文字列のセル配列にすることができます。で特定の文字列のインデックスを検索したいvarargin
。有効なソリューションがありますが、arrayfun
2 回使用します。そのようなセル配列で文字列を見つけるための、よりクリーン/高速/より効果的な方法はありますか? 結果index
は、その要素と次の要素を から削除するために使用されvarargin
ます。新しい変数の作成を最小限に抑えたいと思います。
与えられたvarargin
is {'paramA', 'valueA', 'paramB', 9, 'paramX', {'z','x','c'}
、次にfinds
is [] [] [] [] [1] {1x3 cell}
、finds2
is 0 0 0 0 1 0
、およびindex
is5
です。したがって、私のソリューションは必要なことを行いますが、見苦しく見えます。その要素を から削除するfinds2
には (つまり、 create ではなく)使用するだけですが、その後の要素も削除する必要があります。index
varargin
regex - Matlabのセル配列に正規表現を適用するには?
セル配列resにセル 3x2 があり、それぞれに文字列が含まれています。各セルに正規表現を適用したいのですが、次のようになります。
しかし、それは仕事をしません。うまく組み合わせられる方法を知っている人はいますか?
string - セルのベクトルを操作し、それをセル配列MATLABに挿入する
私が使用しているのは、たとえばnxmセルを含むセル配列Mです。そこに含まれる文字列を編集するために、列d、colDを読みました。
char(colD)を使用してこれらのセルを変更したところ、編集が完了した文字列のベクトルができました。cell(colD)を使用してセルに戻す変換ベクトルをセル配列に挿入する必要があります。ループするよりも効率的な方法はありますか?
前もって感謝します!