if文をclasstification tree viewerで表示させる方法をおしえてください。
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
masaki yamate
am 19 Jan. 2017
Kommentiert: mizuki
am 24 Jan. 2017
・if文をclasstification tree viewerで表示させたいです。理想としては、このリンクのclasstification tree viewer(https://jp.mathworks.com/help/stats/fitctree.html)のように表示させたいのですがやり方がわかりません。 どなたか教えていただけませんか。
・下記のif文の中の矩形波の中にX2のような矩形波を当てはめて、この矩形波と取得したYaw角(Yaw(121500:129500))の数値が近似した場合「○」と表示させ、近似しなかった場合、次の階層に進むようにしたいのですがどうすればよいでしょうか。
if true
% code
end
x2 = 100*square(2*pi*(0.01475)*time(121500:129500));
plot(time(121500:129500),x2,'r-',time(121500:129500),Yaw(121500:129500))
if true
% code
end
% if矩形波(○)
% disp('橋面舗装、打音検査')
% else矩形波(×)
if文ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
%if true
% code
%end
x=142%梯子下内の閾値設定
for k=1:12
fprintf('%2.0f\n',k);
if (data6(k,8)<-15);
% 右(ピンク)
if (data6(k,11)>=300);
disp('再橋梁下内からの確認シーン')
else(data6(k,11)<300);
disp('橋梁下内からの確認シーン')
end
elseif(data6(k,8)<10 & data6(k,8)>=-15);
% 真ん中(紫)
if(data6(k,7)<=50);
disp('全景')
else(data6(k,7)>50);
disp('上流からの確認シーン')
end
else(10>data6(k,8));% 左(緑)
if(data6(k,24)<x);
disp('下流/再下流からの確認シーン')
else(data6(k,24)>=x);
% if矩形波(○)
% disp('橋面舗装、打音検査')
% else矩形波(×)
if(data6(k,23)>=3);
disp('支承と橋台裏確認')
elseif(data6(k,23)<3);
if(data6(k,2)<-60);
disp('排水装置')
elseif(data6(k,2)>=-60);
if(data6(k,8)>=40);
disp('伸縮装置')
elseif(data6(k,8)<40);
if(data6(k,24)<x+3);
disp('地ふく')
elseif(data6(k,24)>=x+3);
disp('こうらん')
end
end
end
end
end
end
end
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
どなたかご存知の方がいらっしゃいましたら、教えていただけませんか。
0 Kommentare
Akzeptierte Antwort
mizuki
am 19 Jan. 2017
FITCTREE 関数のドキュメントにあるようなtree viewer はルールベースドの手法ではなく機械学習の手法向けに作成されています.今回の場合は条件をあらかじめ指定するルールベースドの木を作成されたいため,残念ながらこのtree viewer を使用することはできません.そういった機能は無いため,ご自身で作成する必要があります.
二つ目の質問の○×表示はどこに表示させたいのでしょうか.tree viewerということであれば,前述の通りです. コマンドウィンドウでよければ disp 関数を使用します.
2 Kommentare
mizuki
am 24 Jan. 2017
ある二つの値を比較する場合,差が0であれば一致しているとみなすことができます.例えば信号Aと信号B (両方ベクトル) を比較して一致していればdispを実行したい場合,
sum_diff = sum(A - B); % AとBの差をとり,全ての差を合計
if(sum_diff == 0)
disp('打音検査')
end
とします.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Type Identification finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!