5

にある平方根データを逆正弦しようとしてい[-1,1]ます。負のデータポイントを平方根しようとすると、パッケージtransf.arcsineから使用すると生成されます。概念的には、絶対値を二乗し、前の符号を適用してから逆正弦変換を使用したいと考えています。問題は、R でこれを開始する方法がわからないことです。助けていただければ幸いです。metaforNaNsarcsin(sgn(x)√|x|)

4

3 に答える 3

14
x <- seq(-1, 1, length = 20)
asin(sign(x) * sqrt(abs(x)))

または関数として

trans.arcsine <- function(x){
  asin(sign(x) * sqrt(abs(x)))
}
trans.arcsine(x)
于 2012-07-23T22:29:25.707 に答える
4

R のヘルプは単にhelp()またはhelp.search()です。それでは、明白なことを試してみましょう。

> help(arcsin)
No documentation for ‘arcsin’ in specified packages and libraries:

わかりました、それは良くありません。しかし、トリガーできるはずです...もっと簡単なことを試してみましょう。

help(sin)

すべての三角関数があります。そして、ページにへのリンクがあることに注意Mathしてください。それをクリックすると、必要なすべての機能が提供されるようです。入力しただけでできたことがわかりました..

help(Math)

また、

help.search('trigonometry')
于 2012-07-23T21:52:07.740 に答える
0

私も同様の問題を抱えていました。ほとんどのデータセット「logmeantd.ascvr」をアークサイン変換したかったので、次のようにアプローチしました。

最初のメーカーは、データ範囲がb / t -1および1に変換されていることです(この場合、それらはパーセンテージで表されています)。

logmeantd.ascvr[1:12] <- logmeantd.ascvr[1:12] * 0.01

次に、平方根関数sqrt()を適用します。

logmeantd.ascvr[1:12] <- sqrt(logmeantd.ascvr[1:12])

最後に、アークサイン関数asin()を適用します。

logmeantd.ascvr[1:12] <- asin(logmeantd.ascvr[1:12])

*この例では、log関数log()を適用したかったため、データセットのMEAN変数を除外したことに注意してください。

 logmeantd.ascvr$MEAN <- log(logmeantd.ascvr$MEAN)
于 2012-08-22T10:56:02.657 に答える