我有這樣排序基於包含字母加數字中的R
Day <- c("Day1","Day20","Day5","Day10")
A <- c (5,7,2,0)
B <- c(15,12,16,30)
df <- data.frame(Day,A,B)
df$Day <- as.character(df$Day)
第一列中的數據幀的字符列一個數據幀是一個字符,所以我用this solution排序這個數據幀,但並不完全得到它是正確的,因爲這隻對第一列進行排序並且不改變列。
df$Day <- df$Day[order(nchar(df$Day), df$Day)]
我期望的輸出是
Day A B
Day1 5 15
Day5 2 16
Day10 0 30
Day20 7 12
缺少什麼我在這裏?請提供一些輸入。
試試這個:'DF < - DF [順序(NCHAR(DF $日)),]'。或者,如果你不想按長度排序,只需'df < - df [order(df $ Day),]''。這是串排序。如果你想要一個不同的順序,最好用該列的數字組件進行排序。 – Gopala
不對。 Day20在Day10之前。 – Sharath
就像我說的,你不能使用字符串來排序和期望數字排序。 – Gopala