0
我遇到了order()
函數的一些奇怪行爲。 這是2個集(訓練和測試),從這個代碼:order()函數奇怪的行爲
train.part <- 0.25
train.ind <- sample.int(n=nrow(newdata), size=floor(train.part*nrow(newdata)), replace=FALSE)
train.set <- newdata[train.ind,]
test.set <- newdata[-train.ind,]
當我嘗試通過訂購train.set
:
train.set <- newdata[train.ind,]
這一切都正確,但與第二個數據集,這不是好: 前排序:
> test.set
noise.Y noise.Rec
1 7.226370 86.23327
2 3.965446 85.24321
3 5.896981 84.70086
4 4.101038 85.51946
5 7.965455 85.46091
6 8.329555 86.83667
8 6.579297 85.59717
9 7.392187 85.51699
10 5.878640 86.95244
...
排序後:
> test.set<-test.set[order(noise.Y),]
> test.set
noise.Y noise.Rec
2 3.965446 85.24321
4 4.101038 85.51946
11 7.109978 87.44713
...
NA NA NA
NA.1 NA NA
50 17.009351 92.36286
NA.2 NA NA
48 15.452493 92.09277
53 16.514639 91.57661
NA.3 NA NA
...
這是不正確的排序和很多意想不到的NA。
是什麼原因?謝謝!
不要你的意思'順序(test.set $ noise.Y)'之後是連續的? –
不,它匹配: >長度(test.set $ noise.Y);長度(test.set $ noise.Rec) [1] 40 [1] 40 – Aggle
能否請您提供一個[最小的和可重複] (https://stackoverflow.com/q/5963269/3250126)例如? – loki