湾内の 2 つの場所 (または同時にそれぞれ 1 つ) のいずれかに存在する/存在しないクルーズ船を含む 1 つの列を持つ長いデータセットがあります (A または B)。現在、クルーズ船のデータを、数か月連続で 30 分ごとに一連のタイムスタンプに一致させています。この新しいタイムスケールでの存在/不在を表すために、A または B をさまざまな回数繰り上げたいと思います。各クルーズ船はさまざまな回数 (時間単位) 存在します。
私は次のようなことから始めます:
[,1] [,2] [,3]
[1,] "Ship1" "A" "4"
[2,] "Ship2" "B" "5"
[3,] NA NA NA
[4,] NA NA NA
[5,] NA NA NA
[6,] "Ship3" "A" "2"
[7,] NA NA NA
そして、私はこれが欲しい:
[,1] [,2] [,3]
[1,] "Ship1" "A" "4"
[2,] "Ship2" "A,B" "5"
[3,] NA "A,B" NA
[4,] NA "A,B" NA
[5,] NA "B" NA
[6,] "Ship3" "A,B" "2"
[7,] NA "A" NA
私はいくつかのことを無駄に試しました(そしていくつかのクラッシュ):
data$fillAnchorA = na.locf(data$AnchorageA, na.rm = F, mingap = lag(data$hoursPresent))
data$fillAnchorB = rep(na.locf(data$AnchorageB, na.rm = F), length(data$hoursPresent))
data$fillAnchorB = rep(data$AnchorageB, length(mastercruisedata$hoursPresent))
(AnchorageA には、停泊地 A (A で表される) に到着するすべてのクルーズ船があり、AnchorageB には、停泊地 B に向かう船について同じものがあります)。「fillAnchorA」と「fillAnchorB」は、(col2)の目的の出力が必要な場所です。A と B を分けた方が簡単だと思いましたが、違うのでしょうか? 私はここで少し途方に暮れています。