我有一個數據框,我需要重塑,以方便它在一個viz應用程序中使用。這裏的數據幀的壓縮版本:R - 如何重新整理兩列中的數據幀整理值?
Carrier <- c("Mesa", "United", "JetBlue", "ExpressJet", "SkyWest")
Flight_Num <- c(7124, 7177, 334, 1223, 6380)
Origin <- c("ORD", "EWR", "SFO", "BOS", "BDL")
Dest <- c("PIT", "BOI", "DSM", "CWA", "CMH")
Sched_Depr <- c(1955, 1900, 1845, 1253, 1755)
df <- data.frame(Carrier, Flight_Num, Origin, Dest, Sched_Depr)
Carrier Flight_Num Origin Dest Sched_Depr
1 Mesa 7124 ORD PIT 1955
2 United 7177 EWR BOI 1900
3 JetBlue 334 SFO DSM 1845
4 ExpressJet 1223 BOS CWA 1253
5 SkyWest 6380 BDL CMH 1755
Origin
和Dept
被解釋爲地理數據(即座標)由應用程序即。我需要將它們整理在一個名爲Coords
的列中。同時我需要創建一個新的訂單標記變量Order_Points
。因此,新的,重塑數據幀應該是這樣的:
Carrier Flight_Num Coords Sched_Depr Order_Points
1 Mesa 7124 ORD 1955 1
2 Mesa 7124 PIT 1955 2
3 United 7177 EWR 1900 1
4 United 7177 BOI 1900 2
5 JetBlue 334 SFO 1845 1
6 JetBlue 334 DSM 1845 2
7 ExpressJet 1223 BOS 1253 1
8 ExpressJet 1223 CWA 1253 2
9 SkyWest 6380 BDL 1755 1
10 SkyWest 6380 CMH 1755 2
什麼是整理兩列這樣一種有效的方式,同時保持(和複製)其他變量?
輕微的一個改進:'df%>% 聚集(Order_Points,Coords,Origin,Dest)%>% mutate(Order_Points => ifelse(Order_Points ==「Origin」,1,2))%>% select(Carrier,Flight_Num,Coords,Sched_Depr,Order_Points)%>% arrange(desc(Sched_Depr))' – jsb