2016-03-28 99 views
0

我知道这听起来像是一个重复的问题,但我搜索了很多并且找不到这个问题的答案。这是我的情况。将列名从列名中的2个不同数据框的列名分配给新的空数据框R

我有R.

2个data.frames
  1. PotentialTravellersHistory
  2. PossibleAirports

列名的这2个dataframes是

> dput(names(PotentialTravellersHistory)) 
c("uid", "utc", "lat", "long", "vid") 

> dput(names(PossibleAirports)) 
c("DestinationAirportId", "Airline", "AirlineId", "SourceAirport", 
"SourceAirportId", "DestinationAirport", "Name", "City", "Country", 
"IataFaa", "Icao", "Latitude", "Longitude", "MaxLatitude", "MinLatitude", 
"MaxLongitude", "MinLongitude") 

我的问题是我需要创建一个新的数据帧“AirportTravellers”,它具有所有列名称a这些列名称是第一和第二数据帧的列名称的组合。我怎么做?在“AirportTravellers”的列名的例子如下:

"uid", "utc", "lat", "long", "vid", "DestinationAirportId", "Airline", 
"AirlineId", "SourceAirport", "SourceAirportId", "DestinationAirport", 
"Name", "City", "Country", "IataFaa", "Icao", "Latitude", "Longitude", 
"MaxLatitude", "MinLatitude", "MaxLongitude", "MinLongitude" 
+1

只需使用'cbind()'。 'AirportTravellers < - cbind(PotentialTravellersHistory,PossibleAirports)'。如果你想要结合两个数据框架 –

+0

我需要创建一个新的数据框与其他2个dtaframes合并列名称。只需要合并名称并且不需要这些数据框中的数据组合。 –

+0

另外,你能告诉我如何创建一个新的空数据框的列名在上面提到?即“012”,“ut”,“lat”,“long”,“vid”,“DestinationAirportId”,“Airline” ,“城市”,“国家”,“IataFaa”,“Icao”,“纬度”,“经度”,“MaxLatitude”,“MinLatitude”,“MaxLongitude”,“MinLongitude”' –

回答

1

最简单的方法是

AirportTravellers <- cbind(PotentialTravellersHistory[0,], PossibleAirports[0,])

0

当只有人名是可用的,并且没有已经存在的数据帧:

varnames <- c("uid", "utc", "lat", "long", "vid","DestinationAirportId", 
       "Airline","AirlineId", "SourceAirport", "SourceAirportId", 
       "DestinationAirport","Name", "City", "Country", "IataFaa",  
       "Icao", "Latitude", "Longitude","MaxLatitude", "MinLatitude", 
       "MaxLongitude", "MinLongitude") 

创建一个空数据框:

AirportTravellers <- data.frame() 

名称的变量:

for(i in 1:length(varnames)){ 
    AirportTravellers[0,eval(varnames[i])] 
} 

现在给定的变量名空数据帧将被创建。

相关问题