2011-11-16 4 views
-2

을 보간 내가 시간 기준을 보간에 관심이시간 단위로

  V1   V2   V3 V4  V5 V6 
1  201005010000 201005010000 1.68 291.38 1 0 
2  201005010000 201005010300 0.93 335.10 1 0 
3  201005010000 201005010600 2.25 57.38 1 0 
4  201005010000 201005010900 0.43 13.76 1 0 
5  201005010000 201005011200 0.74 101.14 1 0 

의 형태로 설정 엄청난 데이터가 (이 에이버리 3 시간이다). 데이터는 또한 다음 8 일 동안 6 시간마다 업데이트됩니다. 미리 감사드립니다.

+0

가 문제에 대해 구체적 (중 자신의 구성 또는 사용'dput'을 일부 샘플 데이터를 제공하십시오 자신의 데이터의 서브 세트에) 원하는 출력에 대해 구체적이어야합니다. 당신이 지금까지 한 일과 길을 따라 마주 치게되는 장애물을 이미 우리에게 보여 준다면 그것은 우리에게 무리를 줄 것입니다. 좋은 예를 제공하는 방법에 대한 팁은 http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example을 참조하십시오. (그리고 좋은 답변을 얻을 수있는 기회를 높입니다.). –

+0

"진짜 질문이 아닙니다"로 마감하도록 투표했습니다. 왜냐하면 그것도 비현실적인 질문이 아니기 때문입니다. 그 질문이 아닙니다. 데이터가 있습니다. 그것을 보간하려고합니다. 잘 됐네요. 뭐라구? – Spacedman

답변

1

나는 당신이 300의 증분으로 변화하는 V2 벡터 사이의 균등 간격 간격으로 변수 V3과 V4의 보간법을 요구하고 있다고 생각한다. 이것은 V3에서 그렇게하는 것을 보여 주지만 비슷하게 계산 된 interp-V4를 추가하는 것은 하찮은. (나는 우리가 업데이트에 대한 정보와 함께 일을 할 생각하는지 알아 내지 못했다.)

> a100 <- approxfun(y=dat$V3, x=dat$V2) 
> intvec <- a100(seq(dat$V2[1], dat$V2[length(dat$V2)], by=100) 
+) 
> intvec 
[1] 1.6800000 1.4300000 1.1800000 0.9300000 1.3700000 1.8100000 2.2500000 
[8] 1.6433333 1.0366667 0.4300000 0.5333333 0.6366667 0.7400000 
> data.frame(V2 = seq(dat$V2[1], dat$V2[length(dat$V2)], by=100), 
+   V3 =intvec) 
      V2  V3 
1 201005010000 1.6800000 
2 201005010100 1.4300000 
3 201005010200 1.1800000 
4 201005010300 0.9300000 
5 201005010400 1.3700000 
6 201005010500 1.8100000 
7 201005010600 2.2500000 
8 201005010700 1.6433333 
9 201005010800 1.0366667 
10 201005010900 0.4300000 
11 201005011000 0.5333333 
12 201005011100 0.6366667 
13 201005011200 0.7400000 
+0

답장을 보내 주셔서 감사합니다. 그러나 v2는 현재 날짜입니다. 2010-05-01 00:00 그리고 계속해서 100을 더하면 24:00 이상 시간을줍니다. 201005010000 201005021500 3.82 108.29 1 0 201005010000 201005021800 1.59 148.42 1 0 날짜가 바뀌면 21:00 이후에 데이터 세트가 표시됩니다. 나는 내가 자신을 명확히 할 수 있기를 바란다. 201005010000 201005022100 1.29 166.43 1 0 201005010000 201005030000 1.72 177.14 1 0 201005010000 201005030300 1.78 191.98 1 0 201005010000 201005030600 0.13 118.76 1 0 201005010000 201005030900 2.15 105.28 1 0 –

+0

V2는 확실히 yet.You 선택할 수있는 R Date 클래스 변수 아니다 당신이 필요로하는 증가 단계. 네가 제안한 가치들 사이에 두 보간 점을 주려고했다. 필요에 따라 수정하십시오. –

관련 문제