绑定两个表

时间:2016-10-19 06:50:32

标签: r indexing cbind

我是 R 语言的初学者,我需要使用“Yield_CRD”表来实现以下“结果”表。任何帮助表示赞赏。

我需要获取下面的“结果”表。我怎样才能用r实现这个目的。请帮我。

Yield_CRD:

CRD YEAR    Har_Ac    Plant_Ac  Har_Yield   Plant_Yield
10  1951    1498300   1568100   39.5        37.7
10  1952    1551700   1589500   61.5        60
10  1953    1628200   1675200   55.1        53.6
10  1954    1451400   1504800   59.7        57.6
10  1955    1498100   1585700   46.3        43.7
10  1956    1214400   1532600   45.8        36.3
10  1957    1448900   1505500   58          55.8
10  1958    1483900   1567100   53.5        50.7
10  1959    1871400   1957900   58.3        55.7
10  1960    1855700   1945700   64.8        61.8
20  1951    1498300   1568100   49.5        47.7
20  1952    1551700   1589500   71.5        70
20  1953    1628200   1675200   65.1        63.6
20  1954    1451400   1504800   69.7        67.6
20  1955    1498100   1585700   56.3        53.7
20  1956    1214400   1532600   55.8        46.3
20  1957    1448900   1505500   68          65.8
20  1958    1483900   1567100   63.5        60.7
20  1959    1871400   1957900   68.3        65.7
20  1960    1855700   1945700   74.8        71.8

现在我需要下面的“结果”表:

对于CRD(10):

Year   HHar_Ac    Plant_Ac  Har_Yield   Plant_Yield
1951    1498300   1568100   39.5        37.7    
1951    1498300   1568100   39.5        37.7
1952    1551700   1589500   61.5        60
1953    1628200   1675200   55.1        53.6
1954    1451400   1504800   59.7        57.6
1955    1498100   1585700   46.3        43.7
1956    1214400   1532600   45.8        36.3
1957    1448900   1505500   58          55.8
1958    1483900   1567100   53.5        50.7
1959    1871400   1957900   58.3        55.7
1960    1855700   1945700   64.8        61.8    

我有以下代码,但它不起作用

flows <- list()
i <-  which(YieldCRD[,1] == 20, arr.ind=TRUE)
t0 <- i[1]
tend <- i[length(i)]
for (j in t0:tend) {
  flows <- t(as.numeric(YieldCRD[j,2:ncol(YieldCRD)]))
  colnames(flows) <- c('Year','Harvest_Acres','Planted_Acres','Harvest_Yield','Planted_Yield')

}

1 个答案:

答案 0 :(得分:0)

看起来你只是试图抓住一部分行并删除一列(是吗?):

Results<-Yield_CRD[Yield_CRD$CRD==10,-YieldCRD$CRD]