[R] Converting .grib to excel file
javad bayat
j@b@y@t194 @end|ng |rom gm@||@com
Fri Jun 28 17:29:17 CEST 2024
Dear Richard,
I could not extract the data at all.
But what I found is that, the data stored in the grib file converted into
raster layer, and as I had 6 met parameters for a complete year (6 × 365 ×
24) the raster layer has 52,560 layer. The first layer belongs to the first
parameter for the first hour and second layer to the second parameters for
the first hour..... .
And again the seven layer belongs to the first parameter for the second
hour and the layer number 8 belongs to the second param. for the second
hour.... and this cycle is repeated until the layer number 52,560.
I think writing a function to extract these data can be helpful. For
example writing a function to extract the data number 1 and 7 and 13 and
... store in the first column and data number 2,8,14, .... stor in the
second column and doing this for other parameters to complete the table and
eventually create a column for Date.
Can you help me to write a function.
Sincerely
On Wed, 26 Jun 2024, 12:44 Richard O'Keefe, <raoknz using gmail.com> wrote:
> Whoops, sorry, you *did* answer "what went wrong".
> > param_names <- c("param1", "param2", "param3", "param4", "param5",
> "param6")
> > extracted_data <- extract(raster_data, param_names, df = TRUE)
> #Error in (function (classes, fdef, mtable) :
> #unable to find an inherited method for function ‘extract’ for
> signature ‘"SpatRaster", "character"’
>
> OK. The problem is that the extract() function didn't know what to do.
> What does the documentation for 'extract' say?
> The error message seems to say that it is not defined for first argument
> being
> a SpatRaster and second argument being of type character.
>
> (By the way, I'm having trouble updating the terra package in Ubuntu 22.04.
> That's why I'm not trying any of this out.)
>
> Here's what ?extract starts with:
>
> Extract values from a SpatRaster for a set of locations. The
> locations can be a SpatVector (points, lines, polygons), a
> data.frame or matrix with (x, y) or (longitude, latitude - in that
> order!) coordinates, or a vector with cell numbers.
>
> It does NOT say that the set of locations can be a vector of strings.
>
>
> On Wed, 26 Jun 2024 at 20:05, Richard O'Keefe <raoknz using gmail.com> wrote:
> >
> > I'm now inclined to go with 'search for "convert GRIB to CSV".
> > https://confluence.ecmwf.int/display/CKB/How+to+convert+GRIB+to+CSV
> > is the first line. I know that's not an R solution, but using software
> > specifically developed for encoding, decoding, extracting, &c GRIB file
> by the
> > European Centre for Medium-Range Weather Forecasts and actively
> > maintained, with an example page showing how to do it, sounds like a
> > good approach.
> >
> > One of the major things about R is that from the very beginnings of S
> > it was intended to be used with other tools. We have R communicating
> > with Python and Tcl and dear knows what. Getting a specialised tool
> > to do its thing is very much part of the R "way".
> > Or there's gribr https://rdrr.io/github/nawendt/gribr/man/gribr.html
> > which wraps ecCodes in R.
> >
> > I still don't understand what "doesn't work" means. Which step goes
> > wrong and how does it misbehave?
> >
> >
> > On Wed, 26 Jun 2024 at 06:02, javad bayat <j.bayat194 using gmail.com> wrote:
> > >
> > > Richard,
> > > Many thanks for your email.
> > > I had attached the grib file to the original email to R help team but
> it seems you did not receive it.
> > > Unfortunately, I do not know how to reduce the volume or extract some
> of the grib file data to send it for you. The file has the volume of 6
> Megabyte.
> > > I can send it by email.
> > > The file has 6 met parameters and Date (day/month/year hour:minute).
> > > I want the exported file as excel contains 7 columns (Date + 6 met
> parameters).
> > >
> > >
> > > On Tue, 25 Jun 2024, 15:54 Richard O'Keefe, <raoknz using gmail.com> wrote:
> > >>
> > >> Your message referred to an attached file but there was no attachment,
> > >> I have no account at that service, so could not download a sample for
> > >> myself. Does the licence for the data even allow you to send some of
> > >> it in a message? Which parameters are you extracting? When you say
> > >> "it didn't work", what actually happened? Which step went wrong and
> how?
> > >>
> > >>
> > >> On Tue, 25 Jun 2024 at 20:33, javad bayat <j.bayat194 using gmail.com>
> wrote:
> > >> >
> > >> > Dear all;
> > >> > I have downloaded meteorology data from "
> > >> >
> https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels?tab=form
> "
> > >> > as .grib format. It has hourly data of a complete year (every hour
> of every
> > >> > day of 12 months) and has 6 meteorology parameters. The file has
> been
> > >> > attached.
> > >> > I am trying to convert it to an excel file that puts every
> parameter in a
> > >> > separated column. For instance, the first col represents Date, 2nd
> > >> > represents Temperature and so on.
> > >> > Is there any way to do it?
> > >> > I used these codes but did not work:
> > >> > # install.packages("rNOMADS")
> > >> >
> > >> > library(rNOMADS)
> > >> >
> > >> > # Read GRIB data
> > >> > grib_data <- ReadGrib("C:/Users/admin/Downloads/Met.grib")
> > >> >
> > >> > # Convert to a data frame
> > >> > grib_df <- as.data.frame(grib_data)
> > >> >
> > >> > # Write the data frame to a CSV file
> > >> > write.csv(grib_df, file = "output.csv")
> > >> >
> > >> >
> > >> > I would be more than happy if anyone could help me.
> > >> > Sincerely
> > >> >
> > >> > --
> > >> > Best Regards
> > >> > Javad Bayat
> > >> > M.Sc. Environment Engineering
> > >> > Alternative Mail: bayat194 using yahoo.com
> > >> > ______________________________________________
> > >> > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > >> > https://stat.ethz.ch/mailman/listinfo/r-help
> > >> > PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> > >> > and provide commented, minimal, self-contained, reproducible code.
>
[[alternative HTML version deleted]]
More information about the R-help
mailing list