我必須按數字順序加入 60 個名為:coord1、coord2、coord3、...、coord60 的資料框,即:我需要創建一個 new_df,頂部為 coord1,底部為 coord60。
為此,我執行以下操作:
new_df <- do.call("rbind",mget(ls(pattern(pattern = "^coord"))))
問題是它加入了資料幀,但不是按照從 1 到 60 的數字的邏輯順序來進行,而是按照以下順序進行:
coord1, coord10, coord11, coord12..., coord19, coord2,coord20,....
我該如何解決這個問題并讓它為它們訂購 coord1、coord2、coord3、.... coord60?
非常感謝
uj5u.com熱心網友回復:
coord1 <- coord2 <- coord11 <- mtcars[1:2,1:3]
alldat <- mget(ls(pattern="^coord"))
alldat
# $coord1
# mpg cyl disp
# Mazda RX4 21 6 160
# Mazda RX4 Wag 21 6 160
# $coord11
# mpg cyl disp
# Mazda RX4 21 6 160
# Mazda RX4 Wag 21 6 160
# $coord2
# mpg cyl disp
# Mazda RX4 21 6 160
# Mazda RX4 Wag 21 6 160
alldat <- alldat[ order(as.integer(gsub("\\D", "", names(alldat)))) ]
alldat
# $coord1
# mpg cyl disp
# Mazda RX4 21 6 160
# Mazda RX4 Wag 21 6 160
# $coord2
# mpg cyl disp
# Mazda RX4 21 6 160
# Mazda RX4 Wag 21 6 160
# $coord11
# mpg cyl disp
# Mazda RX4 21 6 160
# Mazda RX4 Wag 21 6 160
do.call(rbind, alldat)
# mpg cyl disp
# coord1.Mazda RX4 21 6 160
# coord1.Mazda RX4 Wag 21 6 160
# coord2.Mazda RX4 21 6 160
# coord2.Mazda RX4 Wag 21 6 160
# coord11.Mazda RX4 21 6 160
# coord11.Mazda RX4 Wag 21 6 160
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/522659.html
標籤:r数据框排序绑定
下一篇:一組數的最小絕對差
