我听说到处都有人说使用 data.table 而不是 data.frame 或者您可以在使用数据框的任何地方使用 data.table,但我仍然看到很多像这样的差异
> myDF <- data.frame(x = rnorm(3), y = rnorm(3))
> myDT <- data.table(myDF)
> myDT[,1]
[1] 1
> myDF[,1]
[1] 0.6621419 0.8494085 0.6490634
> myDF[,c("x","y")]
x y
1 0.6621419 -1.8987699
2 0.8494085 -0.6273099
3 0.6490634 0.4566892
> myDT[,c("x","y")]
[1] "x" "y"
> myDT[,x,y]
y x
1: -1.8987699 0.6621419
2: -0.6273099 0.8494085
3: 0.4566892 0.6490634
> myDF[,x,y]
Error in `[.data.frame`(myDF, , x, y) : object 'y' not found
>
它们到底有什么不同,我应该使用哪一个?