2015-05-11 2 views
1

У меня возникли проблемы с извлечением данных точек из файла большой формы (916,2 Мб, 4618197 элементов - отсюда: https://earthdata.nasa.gov/data/near-real-time-data/firms/active-fire-data) в R. Я использую readShapeSpatial в maptools, чтобы читать в файле формы, которая занимает некоторое время, но в конечном итоге работает:Извлечение данных точки из файла большой формы в R

worldmap <- readShapeSpatial("shp_file_name") 

Я тогда data.frame координат, которые я хочу извлечь данные. Однако R действительно борется с этим и либо теряет соединение, либо замерзает даже с одним набором координат!

pt <-data.frame(lat=-64,long=-13.5) 
pt<-SpatialPoints(pt) 
e<-over(pt,worldmap) 

Может ли кто-нибудь посоветовать мне более эффективный способ сделать это?

Или это так, что мне нужно запустить этот скрипт на что-то более мощное (в настоящее время используется Mac mini с процессором 2,3 ГГц)?

Большое спасибо!

ответ

1

Под «точечными данными» вы подразумеваете координаты долготы и широты? Если это так, то вы можете получить данные, лежащие в основе шейп с:

[email protected] 

Вы можете просмотреть это так же, как и любой другой кадр данных, например:

View([email protected]) 

Вы можете также столбцы доступа в этом кадре данных таким же образом, как правило, вы бы, кроме вас не нужен @data, например:

worldmap$LATITUDE 

Наконец, рекомендуется использовать readOGR из пакета rgdal, а не maptools::readShapeSpatial, поскольку прежний читает в информации CRS/проекции.