[英]Combining two columns in R
I have two columns in R: 我在R中有两列:
Origin Dest
ALB ATL
ALB LAG
ALB LAX
I need them to look like this (in one column): 我需要它们看起来像这样(在一列中):
Origin-Dest
ALB-ATL
ALB-LAG
ALB-LAX
Does anyone know how to combine two lines without getting too complicated? 有谁知道如何合并两行而不会变得太复杂?
This is the code I have so far: 这是我到目前为止的代码:
air <- read.table(delta, header=T, sep=",")
aircolSQL <- sqldf("select Origin, Dest, ActualElapsedTime from air")
airsortSQL <- sqldf("select * from aircolSQL order by Origin asc, Dest")
airsortSQL$ActualTimeHours = round((airsortSQL$ActualElapsedTime/60),1)
airsortSQL$ActualElapsedTime <- NULL
Thanks! 谢谢!
In SQLite ||
在SQLite中||
is used for string concatenation: 用于字符串连接:
library(sqldf)
sqldf("select Origin || '-' || Dest OD from air")
giving: 给予:
OD
1 ALB-ATL
2 ALB-LAG
3 ALB-LAX
data We used this as air
: 数据我们用它作为air
:
air <- structure(list(Origin = structure(c(1L, 1L, 1L), .Label = "ALB",
class = "factor"), Dest = structure(1:3, .Label = c("ATL", "LAG", "LAX"),
class = "factor")), .Names = c("Origin", "Dest"), class = "data.frame",
row.names = c(NA, -3L))
If df
is your data frame: 如果df
是您的数据帧:
df <- data.frame(Origin = rep('ALB', 3), Dest = c('ATL', 'LAG', 'LAX'))
library(tidyr)
unite_(df, '`Origin-Dest`', c('Origin', 'Dest'), sep = "-")
`Origin-Dest`
1 ALB-ATL
2 ALB-LAG
3 ALB-LAX
I often use paste: 我经常使用粘贴:
DataFrame$OriginDest<- paste(DataFrame$Origin,DataFrame$Dest, sep = '-')
I find it the least hassle approach. 我发现这是最省事的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.