0

ベクトルで使用する関数をRで記述する方法を理解するのに苦労しています。質問の場合:

R関数を記述して、整数ベクトルとして表される2つのセットAとBが互いに素であるかどうかを判別します。それらが互いに素である場合は、セットAの要素を表示し、そうでない場合は、セットBの要素を表示します。

関数と条件文の基本的な形式を理解しています。次に例を示します。

name <- function(x){ 
           if (x>3) print("x is greater than 3") 
           else print ("x not greater than 3") 
        }

ただし、上記の質問については、同様のことを行う方法がわかりませんが、引数としてベクトルを使用します。何か答えはありますか?

4

1 に答える 1

1

あなたが持っているのとまったく同じように、単一の値をベクトルの名前に置き換えるだけで機能します。ただし、単一の値だけでなく、一連の数値を扱っていることに注意する必要があります。anyやのような関数allを使用すると、比較を行う際に役立つ場合があります (説明については、 および を参照?anyしてください?all)。

vec1 <- 1:3
print(vec1)
vec1

vec2 <- 2:4
print(vec2)
vec2

grthan3 <- function(vectorname) { 
if (any(vectorname > 3)) print("1 or more values > 3")  else
                         print("no such luck")  
}

grthan3(vec1)
#[1] "no such luck"
grthan3(vec2)
#[1] "1 or more values > 3"

@joran のように、これが宿題の問題である場合、問題を解決するだけではないことに注意しています。

于 2012-05-02T03:27:37.620 に答える