QCAパッケージの使用では、通常、データセットの列を2倍の値に置き換えるためにifelse
を使用します。しかし、ファジーセットを扱うときは、ネストされたifelse
を使用することは醜いことがわかります。ベクトルを扱う際にifelseを置き換えるcaseステートメント
代わりにcase文を使用する方法はありますか? switch
は制御フローのためのものであり、ベクトルを処理しません。例えば
:
DDDfz $VIES <- ifelse (DDD $vies == "p", 1, 0)
はOKですが、
DDDfz $TIPO <- switch (DDD $tipo, "PD", 0, "PL", 0.5, "MP", 1)
Error in switch(DDD$tipo, "PD", 0, "PL", 0.5, "MP", 1) :
EXPR deve ser um vetor de comprimento 1