Difference between revisions of "Dbase (DBF)"

From GRASS-Wiki
Jump to: navigation, search
(some more info to tabel calculations)
m (formatting)
Line 31: Line 31:
 
# [http://article.gmane.org/gmane.comp.gis.freegis/2198 Answer 5]:
 
# [http://article.gmane.org/gmane.comp.gis.freegis/2198 Answer 5]:
 
#* OO.org Base instead of Calc
 
#* OO.org Base instead of Calc
=== [http://thread.gmane.org/gmane.comp.gis.grass.user/21244/focus=21248 Is it safe to edit the DBF-table outside of GRASS in another program? ===
+
=== [http://thread.gmane.org/gmane.comp.gis.grass.user/21244/focus=21248 Is it safe to edit the DBF-table outside of GRASS in another program?] ===
For instance in OpenOfficeCalc? Or even as a CSV with Python, IDL, etc.?] ===
+
For instance in OpenOfficeCalc? Or even as a CSV with Python, IDL, etc.?
 
# [http://article.gmane.org/gmane.comp.gis.grass.user/21248 Answer]:
 
# [http://article.gmane.org/gmane.comp.gis.grass.user/21248 Answer]:
 
#* Yes. You can actually create whatever dbf you want, wherever you want as long as it contains a column with the id's of the objects. Then you can connnect your vector map to this dbf with v.db.connect.
 
#* Yes. You can actually create whatever dbf you want, wherever you want as long as it contains a column with the id's of the objects. Then you can connnect your vector map to this dbf with v.db.connect.
=== [I need to do some calculations on my attribute tables. What is the corresponding command in GRASS for this?] ===
+
=== [http://thread.gmane.org/gmane.comp.gis.grass.user/21244/focus=21248 I need to do some calculations on my attribute tables. What is the corresponding command in GRASS for this?] ===
 
# [http://article.gmane.org/gmane.comp.gis.grass.user/21248 Answer]:
 
# [http://article.gmane.org/gmane.comp.gis.grass.user/21248 Answer]:
 
#* v.db.addcol
 
#* v.db.addcol
 
#* v.db.update
 
#* v.db.update

Revision as of 15:53, 25 February 2008

Some ML-Threads

Is there a simple way to join some attribute data in a comma separated text file to an existing GRASS vector map?

The data in the CSV file does not have any coordinates but a primary key field that also exists in the polygon map it needs to be joined to.

  1. Answer 1:
    • use rdbms as data backend (including for the map you want the data to be connected to)
    • db.in.ogr
    • create view combining map attribute table with new table from csv-file (using key)
    • v.db.connect -o map table=NewView
  2. Answer 2:
    • install SQLite (it does not need setup but works out of the box)
    • set the DBMI settings with db.connect (see manual page for copy-paste example)
    • use v.db.join
    • use g.copy or db.copy to easily transform from DBF (or whatever to SQLite).
  3. Answer 3:
    • identify names and types of columns in csv file
    • v.db.addcol the relevant columns
    • for each line in csv file: v.db.update

Is there a tool which can convert a dBase file into a ASCII or CSV file?

  1. Answer 1:
  2. Answer 2:
    • ogr2ogr -f CSV output world.shp world
  3. Answer 3:
    • db.out.ogr
  4. Answer 4:
  5. Answer 4:
  6. Answer 5:
    • OO.org Base instead of Calc

Is it safe to edit the DBF-table outside of GRASS in another program?

For instance in OpenOfficeCalc? Or even as a CSV with Python, IDL, etc.?

  1. Answer:
    • Yes. You can actually create whatever dbf you want, wherever you want as long as it contains a column with the id's of the objects. Then you can connnect your vector map to this dbf with v.db.connect.

I need to do some calculations on my attribute tables. What is the corresponding command in GRASS for this?

  1. Answer:
    • v.db.addcol
    • v.db.update