2017-06-02 37 views
0

我正在嘗試以https://cran.r-project.org/web/packages/water/vignettes/Landsat8.html爲例做Landsat 8示例。我被困在read.WSdata示例中,我得到錯誤Error in data.frame(date = unique(WSdata$date), radiation_sum = tapply(WSdata$radiation, : arguments imply differing number of rows: 1, 0我正在使用我自己的數據 - 而不是示例中提供的數據。read.WSdata data.frame中的錯誤

我的csv文件的組織方式與示例數據集(「INTA.csv」)完全相同。我注意到數據集之間的唯一區別是,我每15分鐘有一個日期時間,而示例數據集每小時都有日期時間。

這是我的代碼。

`rm(list=ls()) 
library(water) 
aoi<-createAoi(topleft=c(385387,4776577), 
bottomright=c(414825,4749526), EPSG = 32612) 
raw_data_folder <- system.file("rossfrk072616", package="water") 
image <- loadImage(path=raw_data_folder, aoi=aoi, sat="L8") 
image.SR <- loadImageSR(path=raw_data_folder, aoi=aoi) 
plot(image) 
plot(image.SR) 
csvfile<-system.file("rossfrk072616","FTHI_L8_1.csv",package="water")` 

我也假設我們使用原來的MTL文件,而不是表面反射率MTL文件,當您從ESPA下載給出了MTL文件作爲原同名?

MTLfile < - 執行。系統( 「rossfrk072616」, 「LC08_L1TP_039030_20160726_20170221_01_T1_MTL.txt」,包= 「水」) WeatherStation <- read.WSdata(WSdata = csvfile,datetime.format = "%Y/%m/%d %H:%M",columns = c("datetime", "temp","RH", "pp", "radiation", "wind"),lat=43.07138, long= -112.4311, elev=1354.5, height= 2.5, MTL = MTLfile)

我運行read.WSdata後,我得到的錯誤

Error in data.frame(date = unique(WSdata$date), radiation_sum = 
tapply(WSdata$radiation,: arguments imply differing number of rows: 1, 0 
+0

無法MTL的細節說話,但tapply:參數意味着,不同的行數:0 1, - 建議調用1行但不存在,即列的數據= c(「datatime」,等等。 – Chris

+0

我無法找到數據集的任何錯誤。 –

回答

0

這是錯誤與日期的不同格式有關。在您的第一次嘗試中,date.format設置爲'%Y/%m/%d'

此外,您還可以直接指定在read.WSdata()函數的文件,如:

WeatherStation <- read.WSdata(WSdata = 'FTHI_L8_1.csv', date.format = "%d/%m/%Y", lat=43.07138, long= -112.4311, elev=1354.5, height= 2.5, MTL = MTLfile)

1

出於某種原因,我無法從網站獲取代碼以使用我的數據集。但是,我能夠使用以下代碼閱讀我的氣象站數據。 WeatherStation <- read.WSdata(WSdata = csvfile, date.format = "%d/%m/%Y", lat=43.07138, long= -112.4311, elev=1354.5, height= 2.5, MTL = MTLfile)

相關問題