我收到rshaudio(0.97.318)中的PBSmapping(版本2.63.37)中運行importShapefile的零星錯誤消息,運行R版本2.15.2,平臺:i386-w64-mingw32/i386(32位)。在運行以前版本的R和RStudio時,我也收到了錯誤。ImportShapefile與PBSmapping包R中的錯誤
> ST6 = importShapefile("Data/pvi_stat_2002_utm.shp", projection="UTM", readDBF = TRUE)
Error in 1:nrow(dbf) : argument of length 0
> traceback()
2: cbind(1:nrow(dbf), dbf)
1: importShapefile("Data/pvi_stat_2002_utm.shp", projection = "UTM",readDBF = TRUE)
我只偶爾會收到此錯誤 - 我可能每10次運行一次代碼。但是,一旦會話中發生錯誤,它會重複發生,直到完全關閉R並重新打開它纔會成功執行命令。有一次,我不得不重新啓動計算機以使其工作,因爲R的連續重新啓動沒有幫助。
我認爲這可能是一個內存問題,但有時我會得到錯誤,當工作區中沒有對象。即使我加載了大對象,通常代碼仍可以正常運行。爲了響應這個錯誤,我從工作空間中刪除了所有對象,甚至使用gc(),但無濟於事。
這是我收到錯誤的唯一形狀文件,但是由於它是唯一一個我常規使用的形狀文件,並且由於我無法預測何時會發生錯誤,所以我在其他形狀文件方面的努力尚無定論。不知道將shapefile上傳到堆棧溢出。壓縮文件大約9MB。
一個經典案例,您應該使用seq_len(nrow(dbf))而不是1:nrow(dbf) – mdsumner 2013-03-13 19:41:25
嘗試importShapefile(「.. shp」,projection =「UTM」,readDBF = FALSE)錯誤,並讓你的幾何。 rgdal也讀取shapefile和maptools,如果它存在,rgdal會爲您提供投影元數據,而maptools不能(因爲它無法從.prj中的WKT轉換爲PROJ.4)。 – mdsumner 2013-03-13 19:45:10