[解決済み] Rのdata.tableの.SDは何の略か?
質問事項
.SD
は便利そうですが、何をやっているのかよくわかりません。これは何のためにあるのでしょうか?なぜピリオド(フルストップ)が前にあるのか。これを使うとどうなるのでしょうか?
読みました。
.SD
は
data.table
の部分集合を含む。
x
のデータは、グループのカラムを除いて、各グループのデータである。でグループ化する際に使用することができる。
i
でグループ化した場合
by
は、キーになる
by
そして、_ad hoc_
by
ということは、娘さんは
data.table
は、次の操作のためにメモリに保持されるのですか?
どのように解決するのですか?
.SD
は " のようなものです。
S
の部分集合
D
ata.table"です。最初の
"."
ユーザー定義のカラム名と衝突する可能性がより低くなることを除けば、です。
これがあなたのdata.tableであれば。
DT = data.table(x=rep(c("a","b","c"),each=2), y=c(1,3), v=1:6)
setkey(DT, y)
DT
# x y v
# 1: a 1 1
# 2: b 1 3
# 3: c 1 5
# 4: a 3 2
# 5: b 3 4
# 6: c 3 6
これを行うことで、以下のような効果が期待できます。
見る
何
.SD
があります。
DT[ , .SD[ , paste(x, v, sep="", collapse="_")], by=y]
# y V1
# 1: 1 a1_b3_c5
# 2: 3 a2_b4_c6
基本的には
by=y
ステートメントは、元のdata.tableを次の2つのサブに分割します。
data.tables
DT[ , print(.SD), by=y]
# <1st sub-data.table, called '.SD' while it's being operated on>
# x v
# 1: a 1
# 2: b 3
# 3: c 5
# <2nd sub-data.table, ALSO called '.SD' while it's being operated on>
# x v
# 1: a 2
# 2: b 4
# 3: c 6
# <final output, since print() doesn't return anything>
# Empty data.table (0 rows) of 1 col: y
であり、それらを順番に操作していく。
どちらかを操作している間、現在のサブジェクトを参照することができます。
data.table
というニックネーム/ハンドル/シンボルを使って
.SD
. という1つのdata.tableをコマンドラインで操作しているのと同じように、カラムにアクセスして操作できるので、非常に便利です。
.SD
...ただし、ここでは
data.table
は、これらの操作をすべてのサブ
data.table
キーの組み合わせで定義され、それらを貼り合わせ、その結果を1つの
data.table
!
関連
-
R: hclust(d, method = method)でのエラー : 外部関数呼び出しは NA/NaN/Inf(arg10) を持つことができません。
-
[解決済み] .EACHIをdata.tableに入れるか?
-
R言語における共通関数
-
[解決済み] 文字列ベクトルを代入して、列名を持つ空のデータフレームを作成する?重複
-
[解決済み] xkcd風のグラフを作るには?
-
[解決済み] リストをデータフレームに変換する
-
[解決済み] データフレーム内のランダムな行をサンプリングする
-
[解決済み】data.table vs dplyr:一方がうまくできない、またはうまくできないことを行うことができますか?
-
[解決済み】私のggplot2構文が賢明であるときに、R CMDチェック「no visible binding for global variable」注記を処理するにはどうすればよいですか?
-
[解決済み] テーブルをデータフレームに変換する方法
最新
-
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 dataframeでNAの値をゼロに置き換えるには?
-
[解決済み] xkcd風のグラフを作るには?
-
[解決済み] リストやデータフレームの要素にアクセスするためのブラケット[ ]とダブルブラケット[[ ]]の違いについて
-
[解決済み] ggplot2 の棒グラフで棒を並べる
-
[解決済み】ifelse()でDateオブジェクトがnumericオブジェクトにならないようにする方法
-
[解決済み】私のggplot2構文が賢明であるときに、R CMDチェック「no visible binding for global variable」注記を処理するにはどうすればよいですか?
-
[解決済み】set.seed関数を使用する理由
-
[解決済み] テーブルをデータフレームに変換する方法