datacarpentry / r-raster-vector-geospatial

Introduction to Geospatial Raster and Vector Data with R
https://datacarpentry.org/r-raster-vector-geospatial
Other
112 stars 109 forks source link

Show how to convert a long-lat point csv to sf #251

Open jsta opened 6 years ago

jsta commented 6 years ago

This issue is a follow-on from #95 where it was discussed that we never really show how to create an sf object by setting the projection with an EPSG code. My feeling is that we should do this in Ep 10 (Convert from .csv to a Shapefile in R) by showing sf object creation from a non-projected long-lat point csv:

sf_object <- sf::st_as_sf(data_frame, coords = c(longname, latname), crs = 4326)

I see two possibilities here:

ali-rawail commented 3 years ago

This code is not working. i want to change this csv into raster

foresta<-carbonstock

head(carbonstock)

data<-data.frame(carbonstock$Longitude,carbonstock$Latitude,carbonstock$Carbon)

points from scratch

coords = cbind(carbonstock$Latitude, carbonstock$Longitude)

sp = SpatialPoints(coords)

make spatial data frame

spdf = SpatialPointsDataFrame(coords, data)

spdf = SpatialPointsDataFrame(sp, data)

promote data frame to spatial

coordinates(data) = cbind(carbonstock$Latitude, carbonstock$Longitude)

coordinates(data) = ~lon + lat

back to data

as.data.frame(data)

plot(data,)

library(raster)

dfr <- rasterFromXYZ(data) #Convert first two columns as lon-lat and third as value

plot(dfr)

dfr

library(raster)

create spatial points data frame

spg <- data

x<-carbonstock$Latitude

y<-carbonstock$Longitude

coordinates(spg) <- ~ x + y

coerce to SpatialPixelsDataFrame

gridded(spg) <- TRUE

coerce to raster

rasterDF <- raster(spg)