官术网_书友最值得收藏!

Merging DataFrames

R also provides a built-in command, merge, in order to join DataFrames. Let us create a separate DataFrame with the geographic location of the center of each state (Latitude and Longitude):

state2 <- data.frame(State=state.name, Latitude=state.center$y, Longitude=state.center$x) 
 
# The syntax for merge is as follows: 
 
## S3 method for class 'data.frame' 
# merge(x, y, by = intersect(names(x), names(y)), 
#       by.x = by, by.y = by, all = FALSE, all.x = all, all.y = all, 
#       sort = TRUE, suffixes = c(".x",".y"), 
#       incomparables = NULL, ...) 
 
# Arguments 
 
# x and y = the DataFrames we want to merge 
# by = the column names by which we want to perform the merge 
 
# Note that since this can be different (if say the same column had different names in different DataFrames), we can use by.x and by.y to specify the corresponding name of the column across the 2 DataFrames 
 
# all = whether to keep rows that did not match in either in x or y  
# Using all=T means keep all rows of both the DataFrames even if there was no match 
 
merged <- merge(state, state2, by="State", all=T) 
merged 

Output is as follows:

New rows and columns can be added using the rbind and cbind functions.

For example, if, say, we create two DataFrames using a subset of the state DataFrame, we can combine them as follows:

# Using cbind to combine 2 separate data.frame of 2 columns each 
state0 <- state[,c(1:2)] 
state1 <- state[,c(3:4)] 
 
dim(state0) 
dim(state1) 
 
state01 <- cbind(state0,state1) 
state01 
 
# Population Income Illiteracy Life.Exp 
# Alabama              3615   3624        2.1    69.05 
# Alaska                365   6315        1.5    69.31 
# Arizona              2212   4530        1.8    70.55 
# Arkansas             2110   3378        1.9    70.66 
 
# Using rbind to combine 2 separate data.frame of 2 rows each 
state0 <- state[c(1:2),] 
state1 <- state[c(3:4),] 
 
dim(state0) 
dim(state1) 
 
state01 <- rbind(state0,state1) 
state01 

Output is as follows:

主站蜘蛛池模板: 洞口县| 塘沽区| 博乐市| 新宾| 达州市| 普宁市| 突泉县| 通海县| 正蓝旗| 武冈市| 新津县| 张北县| 泌阳县| 左贡县| 阿勒泰市| 灵石县| 灌南县| 博爱县| 湛江市| 亚东县| 德惠市| 岳西县| 含山县| 福建省| 古交市| 武川县| 乌拉特中旗| 巧家县| 中卫市| 商洛市| 中西区| 扶沟县| 大宁县| 当阳市| 佳木斯市| 三江| 紫金县| 车险| 咸丰县| 申扎县| 新干县|