1 초 간격으로 데이터가 0.1 초 또는 10 초임 따라서 244 * 60 * 60 * 10을 기준으로 하루 864000 회선 .UTC 십진 시간을 사용하여 0.1 초에서 30 분 (30 분)까지의 시간 간격
내 데이터에서 0.1 초 시간 단계에서 30 분으로 집계하여 열의 평균값 (풍속 및 기타 변수는 여기에 표시되지 않음)을 찾고 싶습니다. 그래서 데이터 (하루 동안) 48 개 라인 864000 개 라인에서 집계됩니다
입력 :
tms Hr Min Sec Wind speed
7/13/2014 0:00 0 0 0 3.45
7/13/2014 0:00 0 0 0.1 52.34
7/13/2014 0:00 0 0 0.2 1.23
7/13/2014 0:00 0 0 0.3 4.3
7/13/2014 0:00 0 0 0.4 1.34
7/13/2014 0:00 0 0 0.5 3.6
출력 내가보고 싶어 : 시간당 평균에 대한
Year Month Day Hr Wind speed
7/13/2014 7 13 0 21.92
7/13/2014 7 13 0.5 29.38
7/13/2014 7 13 1 24.18
7/13/2014 7 13 1.5 1.70
7/13/2014 7 13 2 1.80
내 코드를 내가 원하는 30 분 (1 시간이 아닌)까지 데이터를 집계하도록 변경합니다. 어디 dat
tms
열없이 데이터입니다 : 그래서 날짜 열을 추가했습니다.
library(data.table)
library(xts)
dat <- data.table(dat)
tms <- as.POSIXct(seq(0,24*(60*60*10)-1,by=1),origin="2014-07-13",tz="UTC")
xts.ts <- data.frame(xts(dat,tms))
지금 내 데이터
Aut <- data.frame(tms,xts.ts, check.names=FALSE, row.names=NULL)
mean2 <- aggregate(Aut,
list(hour=cut(as.POSIXct(Aut$tms), "hour")),
mean)
그러나 심지어 매 시간이 정확하지에
tms
열을 추가했다. 나는 내 데이터의 평균을 30 분으로 원해. 어떤 제안? 나는 내 댓글에서 언급 한 바와 같이
출력물을 원하는대로 나에게 명확하지 않습니다. xts를 사용하면 시간에 따라 집계하는 것이 쉽지만 재현 가능한 입력 ('dat'은 정의되지 않음) 또는 예상 한 결과의 예를 제공하지 않았습니다. 이 두 가지를 제공하면 몇 가지 답을 얻게 될 것입니다. –
나는 그것을 편집했으나 아마도 형식화가 필요합니다. – Wisconsin
@JoshuaUlrich 나는 그것을 편집하고 결과를 제공했지만 형식화에 어떤 일이 일어 났는지 확신하지 못했습니다. 나는 0.1 초 시간 단계에서 30 분 (0.5 시간)까지의 평균값을 원합니다. 그래서 하루에 864000 라인에서 48 라인으로 데이터를 롤백 – Wisconsin