2014-07-13 36 views
0

我有一個關於使用函數order()的問題,我有以下data.frame和我使用以下語句,但我無法排序列,並找不到錯誤。我想要這個列Tag_PHASE從最低到最高排序。排序data.frame到列

Tag_PHASE Num_EPC 
1 101.0 1 
2 126.0 1 
3 70.0 1 
4 73.0 1 
5 78.0 3 
6 81.0 1 
7 84.0 1 
8 87.0 1 
9 90.0 1 
10 92.0 3 

a<-DF_TAG_PHASE_EPC_counter[order(DF_TAG_PHASE_EPC_counter$Tag_PHASE), ] 
+0

似乎爲我工作。你有什麼錯誤嗎? – A5C1D2H2I1M1N2O1R2T1

+0

它不給我任何錯誤...只是沒有。 – Alex

回答

1

下面是一個嘗試:

DF_TAG_PHASE_EPC_counter <- 
    data.frame(Tag_PHASE = runif(10)*100, Num_EPC = sample(c(1,3), 10,prob = c(.7,.3), replace = T)) 
DF_TAG_PHASE_EPC_counter 

DF_TAG_PHASE_EPC_counter[order(DF_TAG_PHASE_EPC_counter$Tag_PHASE),] 

注意:您要分配的結果爲:

a <- DF_TAG_PHASE_EPC_counter[order(DF_TAG_PHASE_EPC_counter$Tag_PHASE),] 

所以看到的結果,你必須打印

a 

這是一個更簡單的方法:

library(data.table) 
DT <- setDT(DF_TAG_PHASE_EPC_counter) 
DT[order(Tag_PHASE)] 

更多here