[解決済み] 行列またはデータフレームの各行に対して関数を適用する
2022-05-10 22:19:30
質問
n x 2 の行列と、2-ベクトルを引数の1つとする関数があるとします。私は、行列の各行に関数を適用し、n-ベクトルを取得したいと思います。Rでこれを行うにはどうすればよいですか?
例えば、2次元標準正規分布の密度を3点上で計算したい。
bivariate.density(x = c(0, 0), mu = c(0, 0), sigma = c(1, 1), rho = 0){
exp(-1/(2*(1-rho^2))*(x[1]^2/sigma[1]^2+x[2]^2/sigma[2]^2-2*rho*x[1]*x[2]/(sigma[1]*sigma[2]))) * 1/(2*pi*sigma[1]*sigma[2]*sqrt(1-rho^2))
}
out <- rbind(c(1, 2), c(3, 4), c(5, 6))
の各行に関数を適用する方法。
out
?
ポイント以外の引数の値を、指定した方法で関数に渡すにはどうしたらよいでしょうか?
どのように解決するのですか?
単に
apply()
関数を使用します。
R> M <- matrix(1:6, nrow=3, byrow=TRUE)
R> M
[,1] [,2]
[1,] 1 2
[2,] 3 4
[3,] 5 6
R> apply(M, 1, function(x) 2*x[1]+x[2])
[1] 4 10 16
R>
これは行列を受け取り、それぞれの行に(愚かな)関数を適用します。この関数には,4番目,5番目,...の引数として,追加の引数を渡します.
apply()
.
関連
-
RStudio の "plot.new() : figure margins too large" 問題を解決する。
-
R言語です。「接続を開くことができません」解決策
-
R: hclust(d, method = method)でのエラー : 外部関数呼び出しは NA/NaN/Inf(arg10) を持つことができません。
-
R plot.new() のエラー : 図形の余白が大きすぎる
-
R - ユークリッド距離の計算を簡単にする方法
-
[解決済み] Numpy行列の行を反復して、それぞれ関数を適用する?
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み] 関数のソースコードを見るにはどうしたらいいですか?
-
[解決済み] [Solved] data.frameのカラムをベクトルに変換する?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Rでファイルを読み込む際に、そのようなファイルまたはディレクトリが見つかりません。
-
R言語ダウンロード機能 download.fileとダウンロード解析
-
[解決済み] 特定のサイズのプロットウィンドウを作成する
-
[解決済み] Rで複数行のコメントを持つことは可能ですか?[重複している]。
-
[解決済み] Rで2つのグラフを同じプロットで表示する
-
[解決済み] パッケージ 'xxx' は利用できません (for R version x.y.z) 」という警告にどのように対処したらよいですか?
-
[解決済み] データフレームのリストを行単位で1つのデータフレームに結合する
-
[解決済み] 先頭と末尾の空白を削除するにはどうしたらよいですか?
-
[解決済み] データフレーム内の列を名前でドロップする方法
-
[解決済み] 2つの単語の最初の文字を大文字にします。