У меня есть 6 наборов данных поперечного сечения от периода времени = 1 до периода времени = 6. Всего 6 периодов времени. В каждом периоде времени есть 10 окрестностей, обозначенных идентификатором окрестности. Я хочу объединить их в один панельный / продольный набор данных, который выглядит следующим образом:
# timeperiod y id X1 X2 long lat
# 1 0.1 1 ... ... ... ...
# 2 0.2 1
# 3 0.3 1
# 4 0.4 1
# 5 ... 1
# 6 1
# 1 2
# 2 2
# 3 2
# 4 2
# 5 2
# 6 2
Вот мой код:
## Generate data by year
n <- 10 # total number of neighborhoods
id <- seq(1, n, 1) # neighborhood id
### 1st time period
y = runif(n, min=0, max=1)
t = rep(1,n)
X1 = runif(n, min=0.1, max=2.3)
X2 = runif(n, min=20, max=100)
lat = runif(n, min=3374900.00001, max=3374909.99999)
long = runif(n, min=8438800.00001, max=8438809.99999)
data_1 <- data.frame(cbind(t, y, id, X1, X2, long, lat))
### 2nd time period
y = runif(n, min=0, max=1)
t = rep(2,n)
X1 = runif(n, min=0.3, max=2.67)
X2 = runif(n, min=25, max=103)
lat = runif(n, min=3374900.00001, max=3374909.99999)
long = runif(n, min=8438800.00001, max=8438809.99999)
data_2 <- data.frame(cbind(t, y, id, X1, X2, long, lat))
### 3rd time period
y = runif(n, min=0, max=1)
t = rep(3,n)
X1 = runif(n, min=1.12, max=4.35)
X2 = runif(n, min=31, max=111)
lat = runif(n, min=3374900.00001, max=3374909.99999)
long = runif(n, min=8438800.00001, max=8438809.99999)
data_3 <- data.frame(cbind(t, y, id, X1, X2, long, lat))
### 4th time period
y = runif(n, min=0, max=1)
t = rep(4,n)
X1 = runif(n, min=1.25, max=4.77)
X2 = runif(n, min=38, max=118)
lat = runif(n, min=3374900.00001, max=3374909.99999)
long = runif(n, min=8438800.00001, max=8438809.99999)
data_4 <- data.frame(cbind(t, y, id, X1, X2, long, lat))
### 5th time period
y = runif(n, min=0, max=1)
t = rep(5,n)
X1 = runif(n, min=1.44, max=5.52)
X2 = runif(n, min=43, max=124)
lat = runif(n, min=3374900.00001, max=3374909.99999)
long = runif(n, min=8438800.00001, max=8438809.99999)
data_5 <- data.frame(cbind(t, y, id, X1, X2, long, lat))
### 6th time period
y = runif(n, min=0, max=1)
t = rep(6,n)
X1 = runif(n, min=2.99, max=5.876)
X2 = runif(n, min=52, max=133)
lat = runif(n, min=3374900.00001, max=3374909.99999)
long = runif(n, min=8438800.00001, max=8438809.99999)
data_6 <- data.frame(cbind(t, y, id, X1, X2, long, lat))
Я пытался использовать для циклов, reshape
, dplyr
, но ничего из этого не сработало.
Большое спасибо!