R语言 数据操作 组合数据框

cherryfeng 发布于 2012/12/25 12:07
阅读 3K+
收藏 0

R语言中有两个数据框

x
  t1 a b
  1 1 6
  3 2 7
  5 3 8
 y
  t2 c d
  2 a d
  3 b e

怎么组合成一个这样的 按时间t的顺序排列

t a  b  c  d
1 1  6 NA NA
2 NA NA a  d
3 2  7  b  e
4 NA NA NA NA
5 3  8  NA NA
加载中
0
10000011
10000011
矩阵合并,矩阵的行数必需相等。你可以写一个function 将y和x的行数设置相同。然后在合并。
0
c
cherryfeng

矩阵我会转了,谢谢!

怎样把下面的程序用R语言简化 提高运行速度呢

for(i in 1:length(dt)){
for(j in 1:length(df$t)){
if(dt[i]==df$t[j]){
if(is.na(t[i])) t[i]<-as.vector(df$t[j])
if(is.na(date[i])) date[i]<-as.vector(df$date[j])
if(is.na(time[i])) time[i]<-as.vector(df$time[j])
}
}
if(is.na(t[i])&&i==1) t[i]<-0 else if(is.na(t[i])) t[i]<-t[i-1]
if(is.na(date[i])&&i==1) date[i]<-0 else if(is.na(date[i])) date[i]<-date[i-1]
if(is.na(time[i])&&i==1) time[i]<-0 else if(is.na(time[i])) time[i]<-time[i-1]

}

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部