maning sambale wrote:
Thanks!
An example of the r.report output:
|-----------------------------------------------------------------------------|
|              Category Information               |          |     cell|   %  |
| #|description                                   |  hectares|    count| cover|
|-----------------------------------------------------------------------------|
| 1|Siquijor                                      |    31,313|   385511|  0.05|
|  |----------------------------------------------|----------|---------|------|
|  |112|Broadleaf - open canopy. . . . . . . . . .|      8265|   101755| 26.39|
|  |140|Mangrove . . . . . . . . . . . . . . . . .|       173|     2125|  0.55|
|  |210|Agriculture-annual . . . . . . . . . . . .|      7370|    90737| 23.54|
|  |310|Scrub. . . . . . . . . . . . . . . . . . .|      1063|    13081|  3.39|
|  |320|Grassland. . . . . . . . . . . . . . . . .|      7185|    88460| 22.95|
|  |400|Built-up . . . . . . . . . . . . . . . . .|       103|     1270|  0.33|
|  |510|Inland water . . . . . . . . . . . . . . .|        44|      539|  0.14|
|  |  *|no data. . . . . . . . . . . . . . . . . .|      7111|    87544| 22.71|

I want converted to:
Province,land_cover_code,description,hectares,cell_count,percent_cover

I will try the cryptic awk lines.


On Wed, Feb 25, 2009 at 12:12 AM, Giovanni Pasini <[email protected]> wrote:
maning sambale ha scritto:
Hi,

Looking for tips in "transforming" r.report output into a
"spreadsheet" like format.

Hi,
I use awk (change NF and the other fields $*):

r.report -n map=gri_1000_in,dem2_idw_100_slope_rec units=h,p,c | awk 'BEGIN
{FS="|";OFS="|"} !/---/ && NF==7 {intest=$2} NF==8 {sub(/[ .]*$/,"",$4);
print intest, $4, $6}' > report_slope.txt

This from a non awk expert!

cheers,
giovanni
_______________________________________________
grass-user mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-user





try this:

cat report.txt |awk 'BEGIN {FS="|";OFS="|"} !/---/ && NF==7 {intest=$3} NF==8 {sub(/[ .]*$/,"",$4); print intest, $4,$5,$6,$7}'

or better:

cat report.txt | awk 'BEGIN {FS="|";OFS="|"} !/---/ && NF==7 {intest=$3} NF==8 {sub(/[ .]*$/,"",$4); sub(/[ ]*$/,"",intest); printf "%s|%s|%d|%d|%.2f\n",intest,$4,$5,$6,$7}'


giovanni


_______________________________________________
grass-user mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to