一つの列の中の任意の​範囲内に正と負の値が​両方がある場合に、そ​の範囲内の値を0に置​換するにはどうしたら​よいですか。

조회 수: 4(최근 30일)
snake
snake 2021년 10월 13일
댓글: snake 2021년 10월 14일
一つの列の中の任意の範囲内に、正と負の値が両方ある場合にその範囲名の値を0に置換する方法を教えていただきたいです。
1,2,-3,4,5,6,7,8,9という要素があるとして、上記における任意の範囲を3としたときに、
0,0,0,4,5,6,7,8,9となるようなイメージです。
私はmatlabを使い始めたばかりで、このようなソフトウェアにもあまり触れてきていなかったため知識が乏しいです。
ご助力お願いいたします。
  댓글 수: 1
Walter Roberson
Walter Roberson 2021년 10월 13일
Approximate translation:
I would like to know how to replace the value of the range name with 0 when there are both positive and negative values in an arbitrary range in one column.Assuming that there are elements 1,2,-3,4,5,6,7,8,9, when the arbitrary range in the above is set to 3,It is an image that becomes 0,0,0,4,5,6,7,8,9.I'm new to matlab and haven't had much knowledge of such software.Thank you for your help.

댓글을 달려면 로그인하십시오.

답변(3개)

Hernia Baby
Hernia Baby 2021년 10월 13일
편집: Hernia Baby 2021년 10월 13일
質問の内容理解しましたので編集します
n = 4;
A = [1,2,-3,4,5,6,7,8,9];
負の値がある場合は1を返します
idx = A < 0
idx = 1×9 logical array
0 0 1 0 0 0 0 0 0
正と負がn=4の中に混在しているかを判定します
混在している場合は4番目までの数字は0になります
idx = idx(1:n)
idx = 1×4 logical array
0 0 1 0
if sum(idx)>=1 & sum(idx) < n
A(1:n) = 0;
end
A
A = 1×9
0 0 0 0 5 6 7 8 9
  댓글 수: 4
snake
snake 2021년 10월 14일
そういうことだったのですね。
行ベクトルと列ベクトル、しっかりと覚えました。
様々なことを丁寧に教えていただき、本当にありがとうございました。
自分なりに調べたり試行錯誤しても分からないことだらけで、学校の先生に聞いても自分でなんとかしての一点張りで、心が折れそうなところを助けていただきました。
改めて、このたびは本当にありがとうございました。
失礼いたします。

댓글을 달려면 로그인하십시오.


Walter Roberson
Walter Roberson 2021년 10월 13일
range = 3;
A = [1,2,-3,4,5,6,7,8,9]
A = 1×9
1 2 -3 4 5 6 7 8 9
A(A < range) = 0
A = 1×9
0 0 0 4 5 6 7 8 9
  댓글 수: 3
snake
snake 2021년 10월 13일
そうだったのですね。
コメントありがとうございます。

댓글을 달려면 로그인하십시오.


snake
snake 2021년 10월 13일
わかりやすい回答ありがとうございます。
「範囲内に~」の範囲をずらしていくことは可能なのでしょうか。
文章での説明が難しいため、図を添付しますのでそちらを見ていただけると有難いです。
また、これらの数値は小数でも実行することはできるでしょうか。
見当違いなことを言っていましたら申し訳ありません。
何卒宜しくお願い致します。
  댓글 수: 1
Hernia Baby
Hernia Baby 2021년 10월 13일
自分のコメントに追加しました
以下は余談です
・全員に追記を展開する場合は質問部で編集すると周りも認知しやすくなります
・個人に対する返答ではコメントに記述すると、その人に通知が来るのでFBが来やすいです

댓글을 달려면 로그인하십시오.

태그

제품


릴리스

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!