我有一个包含100个观察单位和一系列日期的清单:
unit <- c(1:100)
date <- seq.Date(as.Date("2012-01-01"),as.Date("2012-12-01"), by = "month")
我想创建一个新的数据帧,每个观察单位都有一个时间单位。例如:
Unit Date
1 "2012-01-01"
1 "2012-02-01"
1 "2012-03-01"
1 "2012-04-01"
................
100 "2012-01-01"
100 "2012-02-01"
100 "2012-03-01"
100 "2012-04-01"
答案 0 :(得分:3)
您可以使用以下内容:
expand.grid(unit = unit, date = date)
如果这是您的想法。
您可以选择按单位排序:
df <- expand.grid(unit = unit, date = date)
df <- df[order(df$unit), ]
答案 1 :(得分:3)
不像expand.grid那样简洁,但更明确地说,你可以这样做:
examp <- data.frame(Unit = rep(unit, each = length(date)),
Date = rep(date, times = length(unit)))