[GRASS-user] zonal statistics for multiple areas
Alessandro Sebastiani
alessandro.sebastiani at uniroma1.it
Thu Nov 1 09:37:14 PDT 2018
I was trying with nested loops and it seems not to be working. Now I tried
again (more carefully i have to say) and it worked! Thanks to everybody!
Il giorno mer 31 ott 2018 alle ore 21:55 Micha Silver <tsvibar at gmail.com>
ha scritto:
>
> On 10/31/18 11:59 AM, Alessandro Sebastiani wrote:
> > Dear all, i was able to compute zonal statistics for multiple areas
> > using this script. I used
> > > import grass.script as gscript
> > > v_list = gscript.read_command("g.list" , type =
> > "vect").strip().split("\n")
> > # i have 5 vectors in my list
> > > method = ("sum" , "average")
> > > for v in v_list:
> > > gscript.run_command("v.rast.stats", map_=v, raster = "LC1",
> > column_prefix = "LC1", method = methods)
> >
> > Now i have like 4 rasters that i would like to use as input to compute
> > my statistics. Is there a way to loop this process for rasters and
> > vector at the same time? i tried creating a list for rasters and using
> > the name list as raster input but it seems not to work! cheers,
> Alessandro
>
>
> What exactly did you try? There should not be any problem to do nested
> loops. i.e.:
>
>
> import grass.script as gscript
>
> v_list = gscript.read_command("g.list" , type = "vect").strip().split("\n")
> # i have 5 vectors in my list
> r_list = gscript.read_command("g.list" , type = "rast",
> pattern="LC*").strip().split("\n")
> method = ("sum" , "average")
> for v in v_list:
> for r in r_list:
> gscript.run_command("v.rast.stats",
> map_=v, raster = r, column_prefix = r, method = methods)
>
>
> >
> > Il giorno mar 30 ott 2018 alle ore 11:52 Alessandro Sebastiani
> > <alessandro.sebastiani at uniroma1.it
> > <mailto:alessandro.sebastiani at uniroma1.it>> ha scritto:
> >
> > Thanks a lot for your help!
> >
> > Il giorno mar 30 ott 2018 alle ore 11:49 Nikos Alexandris
> > <nik at nikosalexandris.net <mailto:nik at nikosalexandris.net>> ha
> scritto:
> >
> > * Alessandro Sebastiani <alessandro.sebastiani at uniroma1.it
> > <mailto:alessandro.sebastiani at uniroma1.it>> [2018-10-29
> > 21:32:51 +0100]:
> >
> > >thank you all for your suggestions.
> > >Dear Nikos, I have some 0-1 rasters that represents
> > presence-absence of
> > >different land covers. Each raster's resolution is 10x10m,
> > thus i want to
> > >compute the sum in order to obtain the surface covered by
> > each land cover
> > >within my buffers. As regards to the buffer, i want to use
> > the 0-100,
> > >0-200, 0-300, 0-400 and 0-500 for computing stats. I can do
> > it separately
> > >with the module v.rast.stats. I just don't know how to loop
> > it in a python
> > >script
> >
> > Dear Alessandro,
> >
> > I don't have time to write back as I would like. Instead, I
> > will send
> > you off-list some unpublished script. With a bit of reading,
> > there, you
> > might identify some ideas that will eventually help in what
> > you are
> > doing.
> >
> > Kind regards, Nikos
> >
> >
> > _______________________________________________
> > grass-user mailing list
> > grass-user at lists.osgeo.org
> > https://lists.osgeo.org/mailman/listinfo/grass-user
>
> --
> Micha Silver
> Ben Gurion Univ.
> Sde Boker, Remote Sensing Lab
> cell: +972-523-665918
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20181101/ac175da8/attachment.html>
More information about the grass-user
mailing list