我我遇到一個奇怪的「錯誤」(假設它是不顯山露水記錄。)如果你保存到一個字符向量data.table的名稱,然後從刪除列data.table中,名稱的字符向量會自動更新。我覺得這很奇怪和違反直覺。這是一個錯誤?如果不是,它的基本原理是什麼?data.table名稱特徵向量是一個參考
編輯:我問是否不是更好地返回當前名稱的COPY,而不是引用,這是一個錯誤傾向性,並更好地保留的情況下,當有真正的性能優勢(如核心數據)。
> library(data.table)
data.table 1.8.8 For help type: help("data.table")
> sessionInfo()
R version 2.15.3 (2013-03-01)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=C LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] data.table_1.8.8
> dt = data.table(a = 1:10, b = 1:10)
> cols = names(dt)
> cols
[1] "a" "b"
> dt[, a := NULL]
> cols
[1] "b"
>
而你問的問題是......? – A5C1D2H2I1M1N2O1R2T1
這是一個錯誤? – vc273
看起來更像是一個功能,雖然我不一定會預料到它。似乎相當有幫助的是,列在進行「溝通」並在刪除列時得到更新。 –