[GRASS-dev] Temporal GIS: registering maps with infinite values

Hello,

I have some raster maps that have infinite values:

r.univar map=out_v17.2dev_theta7_fr_0005@EA2DT8A
total null and non-null cells: 96400
total null cells: 1840
Of the non-null cells:
----------------------
n: 94560
minimum: 0.000291453
maximum: inf
range: inf
mean: inf
mean of absolute values: inf
standard deviation: -nan
variance: -nan
variation coefficient: -nan %
sum: inf

When trying to register them in a STRDS, I get an SQL error:

  File "/home/laurent/Program/itzi/itzi/gis.py", line 452, in
register_maps_in_stds
    unit=t_unit[t_type])
  File "/usr/lib/grass72/etc/python/grass/temporal/register.py", line
499, in register_map_object_list
    file=filename, dbif=dbif)
  File "/usr/lib/grass72/etc/python/grass/temporal/register.py", line
325, in register_maps_in_space_time_dataset
    dbif.execute_transaction(statement)
  File "/usr/lib/grass72/etc/python/grass/temporal/core.py", line
1021, in execute_transaction
    return self.connections[mapset].execute_transaction(statement)
  File "/usr/lib/grass72/etc/python/grass/temporal/core.py", line
1315, in execute_transaction
    self.cursor.executescript(statement)
OperationalError: no such column: inf

I'm using GRASS 7.2.0
Is there a solution to that issue?

Regards,
Laurent

It seems that sqlite does nor support "inf" as valid numerical value.
There is no fast fix available for this issue. Can you avoid computing
infinite values?

Best regards
Soeren

2017-03-04 0:25 GMT+01:00 Laurent C. <lrntct@gmail.com>:

Hello,

I have some raster maps that have infinite values:

r.univar map=out_v17.2dev_theta7_fr_0005@EA2DT8A
total null and non-null cells: 96400
total null cells: 1840
Of the non-null cells:
----------------------
n: 94560
minimum: 0.000291453
maximum: inf
range: inf
mean: inf
mean of absolute values: inf
standard deviation: -nan
variance: -nan
variation coefficient: -nan %
sum: inf

When trying to register them in a STRDS, I get an SQL error:

  File "/home/laurent/Program/itzi/itzi/gis.py", line 452, in
register_maps_in_stds
    unit=t_unit[t_type])
  File "/usr/lib/grass72/etc/python/grass/temporal/register.py", line
499, in register_map_object_list
    file=filename, dbif=dbif)
  File "/usr/lib/grass72/etc/python/grass/temporal/register.py", line
325, in register_maps_in_space_time_dataset
    dbif.execute_transaction(statement)
  File "/usr/lib/grass72/etc/python/grass/temporal/core.py", line
1021, in execute_transaction
    return self.connections[mapset].execute_transaction(statement)
  File "/usr/lib/grass72/etc/python/grass/temporal/core.py", line
1315, in execute_transaction
    self.cursor.executescript(statement)
OperationalError: no such column: inf

I'm using GRASS 7.2.0
Is there a solution to that issue?

Regards,
Laurent
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

On Mar 5, 2017 9:07 AM, “Sören Gebbert” <soerengebbert@googlemail.com> wrote:

It seems that sqlite does nor support “inf” as valid numerical value.
There is no fast fix available for this issue. Can you avoid computing
infinite values?

A similar issue may be this

#2343: GRASS 7: “inf” values break insert statements in v.rast.stats

Best
Markus