[解決済み] スイープ」機能の使い方
質問事項
R Packagesのソースを見ると、以下のような関数があります。
sweep
がよく使われます。
もっとシンプルな関数で十分なのに、それが使われていることもある(例.
apply
),
また、このコードが何を行っているのか、正確に知ることができない場合もあります。
そのコードブロックに相当な時間をかけて、順を追って説明しています。
を再現できるようになったこと。
sweep
の効果は、より単純な関数を使って得られるということです。
を理解していない。
sweep
この関数が頻繁に使われるということは、かなり有用であることを示唆しています。
コンテキストのことです。
sweep
はRの標準ライブラリにある関数で、引数は以下の通りです。
sweep(x, MARGIN, STATS, FUN="-", check.margin=T, ...)
# x is the data
# STATS refers to the summary statistics which you wish to 'sweep out'
# FUN is the function used to carry out the sweep, "-" is the default
見ての通り、引数は
apply
とはいえ
sweep
が必要です。
というパラメータを追加しました。
STATS
.
もう一つの重要な違いは
sweep
の配列を返します。
同じ形
が返す結果は、入力配列と同じです。
apply
は、渡された関数に依存する。
sweep
を実行中です。
# e.g., use 'sweep' to express a given matrix in terms of distance from
# the respective column mean
# create some data:
M = matrix( 1:12, ncol=3)
# calculate column-wise mean for M
dx = colMeans(M)
# now 'sweep' that summary statistic from M
sweep(M, 2, dx, FUN="-")
[,1] [,2] [,3]
[1,] -1.5 -1.5 -1.5
[2,] -0.5 -0.5 -0.5
[3,] 0.5 0.5 0.5
[4,] 1.5 1.5 1.5
要するに、私が求めているのは、「Science」「Science」「Science」の典型的な使用例なのです。
sweep
.
Rドキュメントやメーリングリストなど、Rの「主要な」ソースを引用したり、リンクを張ったりしないでください。私が興味があるのは、経験豊富なRプログラマーやアナリストが、どのように
sweep
を自分のコードに組み込んでいます。
解決方法は?
sweep()
は通常,行列を行または列で操作する場合に使用され,操作のもう一方の入力は各行/列で異なる値です.行と列のどちらで演算するかは,MARGINで定義されます。
apply()
. 私が "他の入力" と呼んだものに使われる値は、STATS で定義されています。
つまり、各行(または列)に対して、STATSから値を取り出し、FUNで定義された操作で使用することになります。
例えば、定義した行列の1行目に1、2行目に2などを足したい場合は、次のようになります。
sweep (M, 1, c(1: 4), "+")
私も正直なところ、Rのドキュメントにある定義が理解できず、例を調べて学んだだけです。
関連
-
[解決済み] write.tableしようとすると、未実装の型リストが表示される。
-
[解決済み】 file(filename, "r", encoding = encoding) : cannot open the connectionでエラーが発生する。
-
[解決済み] ヒートマップ作成時のエラー - 外部関数呼び出しでNA/NaN/Inf (arg 11)
-
[解決済み] Rの再現性のある優れた例題の作り方
-
[解決済み] データフレームを結合(マージ)する方法(内側、外側、左側、右側)
-
[解決済み] データフレームの行を複数の列でソート(並び替え)する。
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
-
[解決済み] 関数のソースコードを見るにはどうしたらいいですか?
-
[解決済み] 統計的最頻値の求め方は?
最新
-
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 3.5.0 macOS
-
[解決済み] テスト
-
[解決済み】 lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) のエラー : 'y' の NA/NaN/Inf, あらゆる方法を試したが解決しなかった。
-
[解決済み】Rヒストグラムの範囲エラー:いくつかの'x'がカウントされない; 'break'が'x'の範囲に及ばないかもしれない
-
[解決済み] ヒートマップ作成時のエラー - 外部関数呼び出しでNA/NaN/Inf (arg 11)
-
[解決済み] na.fail.defaultのエラー:オブジェクトの値が見つからない - しかし、値が見つからないことはありません。
-
[解決済み】.External.graphics Rでエラーが発生しました。
-
[解決済み】"object not interpretable as a factor "というエラーの意味は?[クローズド]