10570 개의 요소가있는 Large SpatialPointDataFrame이 있습니다. 각 행은 연관된 날짜가있는 지점입니다 (일부 행은 같은 날짜 임). 이 객체는 4760 개의 열 (RasterStack과 점 사이의 extract() 함수 출력)이며 각 열은 연관된 값 (온도)이있는 날짜에 해당합니다.data.frame을 사용한 R 코드 최적화
간단한 예 :
DATE2 BICHO X2000.01.01 X2000.01.02 (...) X2012.12.31
2009-04-08 Woody 20.7 19.2 ... 9.5
2009-04-09 Woody 20.7 19.2 ... 9.5
2009-04-10 Woody 20.7 19.2 ... 9.5
2004-11-30 Woody 20.7 19.2 ... 9.5
2004-12-01 Buzz 20.7 19.2 ... 9.5
2004-12-02 Buzz 20.7 19.2 ... 9.5
내가하고 싶은 것은 각 해당 날짜의 온도를 포함이 data.frame에 새 열 (TP)를 만드는 것입니다.
for(i in 11:4760){
datas<-str_sub(colnames([email protected][i]), start=2,end=11L)
datas<-format(as.Date(datas, "%Y.%m.%d"),"%Y-%m-%d")
for(j in seq_along([email protected]$TP)){
print(c(i,j)) #just a print to see how fast is the code
if(as.character(factor(pts$DATE2[j]))==datas){
[email protected][j,]$TP<[email protected][j,][i]
}
}
}
코드는 작동하지만 느린데 누구나 최적화를 도와 줄 수 있습니까? 거기 DATE2 날짜와 일치하는 컬럼에는 날짜가 없지만, 나는이 희망
열 1 "DATE2"]의 날짜가 있고 날짜는 각 열에있다 [ "X2000.01.01"]. "해당 날짜"로 어느 것을 의미합니까? – Henk
해당 날짜는 DATE2입니다. 내 목표는 (열에서) 행 날짜에 해당하는 값을 찾는 것입니다. – JMarcelino
분명하지 않습니다. 'DATE2' 칼럼에서 칼럼 명 날짜와 날짜 - 값을 일치 시키려고합니까? 또한 칼럼이 순차적으로 순차적으로 나열되기 때문에 그 중 하나를 변환 할 필요가 없다는 점을 지적하고자합니다. 열 번호를 가져 와서 일부 날짜/시간 함수를 사용하여 그 값을 기본 날짜에 "일"로 추가하십시오. –