Ändern des Datentyps in der ArcGIS-Attributtabelle?


9

Wie kann ich den Datentyp in einer Attributtabelle in ArcGIS für mehrere Felder ändern?

Wenn die Felder beispielsweise als Zeichenfolge aus Excel exportiert wurden und ich sie als numerische Werte verwenden möchte?


1
Sie können nicht Tabelle für Tabelle ausführen, wenn die Datentypen nicht übereinstimmen. Ich weiß, ich habe es versucht.
Sam

Bitte beachten Sie das Datenquellenformat und die Version. (ent Datenbank, Shapefile, Filegdb, persönliche GDB?)
Brad Nesom

@Brad arbeitet mit Shapefiles in Arcgis 10.2, die Datenquelle ist lokal auf meinem Computer
Kampf

Antworten:



3

Sie erwähnen nicht, welche Version von ArcGIS for Desktop Sie verwenden oder wo Ihre Daten gespeichert sind, aber es gibt eine Seite zum Ändern der Feldeigenschaften , auf der beschrieben wird, wie ArcGIS 10.2 (oder höher) verwendet wird:

Einige Feldeigenschaften können geändert werden, nachdem die Tabelle oder Feature-Class erstellt wurde

... dies gilt jedoch nur für leere Felder.

Ab 10.3 ist die oben genannte Funktionalität auch über das Werkzeug Felder ändern verfügbar :

Benennen Sie Felder und Feldaliasnamen um oder ändern Sie die Feldeigenschaften.


brauchen Präzision. seit 10.2.1
GeoStoneMarten

@GeoStoneMarten Felder in 10.2.1 ändern scheint nur zum Umbenennen von Feldern gedacht zu sein, während sich meine Antwort auf das Ändern von Datentypen bezieht und ich denke, dass dies weiterhin gültig ist. Die Antwort von @Paul legt jedoch nahe, dass Alter Fields seine Funktionalität um das Ändern von Datentypen bei 10.3 erweitert hat.
PolyGeo

Nicht nur, sondern ja, wenn Daten vorhanden sind ... Ok für sonst
GeoStoneMarten

2

Sie können den Felddatentyp für die Felder in Ihrer Feature-Class ändern. Sie können jedoch keine Textfelder in numerische konvertieren. Sie können Ihre numerischen Felder jedoch in Zeichenfolgen konvertieren. Schauen Sie sich die Esri-Hilfeseite an . Dies gilt nicht nur für Enterprise-Geodatabase, sondern auch für Desktop-Geodatabases wie File-Geodatabase.

Wenn sich die Tabelle oder Feature-Class in einer Unternehmens-, Arbeitsgruppen- oder Desktop-Geodatabase befindet , müssen Sie eine Verbindung als Tabelleneigentümer herstellen, um die Feldeigenschaften zu ändern.

Da Sie sich mit Excel beschäftigen, können Sie am besten sicherstellen, dass Ihre Datentypen korrekt sind, indem Sie Zelldatentypen direkt in Excel definieren, bevor Sie Daten importieren. Wenn Sie jedoch ein Textfeld mit Zahlen haben, können Sie natürlich ein neues Feld vom numerischen Typ (z. B. Integer oder Double) erstellen und die Werte basierend auf diesem Textfeld berechnen. Dies funktioniert gut, wenn Ihre Zahlen wirklich Zahlen sind ("12" funktioniert, "12-1" jedoch nicht).


2

Meines Wissens ist dies nicht möglich. In 10.3 wurde " Feld ändern" erweitert, um das Ändern des Feldtyps zu ermöglichen. Es funktioniert jedoch immer noch nur, wenn die Tabelle keine Datensätze enthält.

Hier ist jedoch ein Ansatz, um dies zu tun:

  1. Fügen Sie ein neues Feld mit einem temporären Namen und dem richtigen Datentyp hinzu
  2. Verwenden Sie Calculate Fieldoder cursors(bei Bedarf mit Gießen)
  3. Altes Feld löschen
  4. Alter Field um das temporäre Feld umzubenennen
  5. (Optional) Kopieren Sie die Tabelle mit einigen Feldzuordnungen, um die ursprüngliche Reihenfolge wiederherzustellen

Ich habe es nie untersucht, aber die Feldzuordnung könnte funktionieren, um Felder in neue Datentypen umzuwandeln, was diesen Prozess erheblich vereinfachen würde. Etwas, auf das man auf jeden Fall achten sollte ...


1
Normalerweise benenne ich zuerst das alte Feld um. Auf diese Weise kann ich das neue Feld neu erstellen, die Werte berechnen und dann das alte Feld löschen. Wenn Sie mit der Berechnung der Werte beginnen, müssen Sie möglicherweise alle Nicht-Null-Werte auswählen. und oder konvertieren / teilen Sie beliebige Zeichenfolgenwerte
Brad Nesom

1
Auch et tools hat einige kostenlose Funktionen, die hilfreich wären. ian-ko.com Sehen Sie sich die kostenlosen Funktionen von Geo-Assistenten an.
Brad Nesom

@Brad Ich habe nach freien Funktionen gesucht, xtools war hilfreich, aber ich bin immer offen für mehr / bessere Optionen. Vielen Dank für die Eingabe
Kampf

@BradNesom, guter Punkt! Das wäre viel sinnvoller.
Paul

1

Eine alternative Möglichkeit besteht darin, Ihre .dbfDatei in OpenOffice Calc (oder einem gleichwertigen Dokument) zu öffnen und die Überschriften der Spalten sorgfältig zu ändern. Ändern Sie beispielsweise den Typ von C(Zeichen) in N(Numerisch). Ein einfacher Rat: Sichern Sie Ihre Datei, bevor Sie es versuchen.


1

Obwohl Sie den Feldnamen und den Datentyp im Dataset selbst nicht ändern können, können Sie mit dem ArcGIS-Tool "Feature-Class zu Feature-Class" eine Kopie mit den gewünschten Änderungen erstellen. In den Einstellungen können Sie Namen, Datentypen und andere Merkmale der Felder ändern.


1

Vor allem muss versucht werden zu verstehen, warum ArcGIS ein Feld als Zeichenfolgentyp anstelle eines numerischen / doppelten Datentyps importiert. Ich habe festgestellt, dass ArcGIS diese auch dann als Zeichen interpretiert, wenn Ihre Zelle (in Excel) leer ist und "Leerzeichen" enthält (wie beim Drücken der Leertaste). Wenn Sie sie entfernen, werden Sie sehen, dass sie jetzt als numerische Felder registriert werden.


0

Schauen Sie sich dieses Dokument an . In der Regel müssen Sie vor und nach dem Import sicherstellen, dass die Daten das richtige Format haben.

"ArcGIS konvertiert normalerweise numerische Tabellenkalkulationsfelder in doppelte Genauigkeit (Double), die möglicherweise nicht Ihren Anforderungen entspricht. Erstellen Sie bei Bedarf neue Felder des gewünschten Typs und berechnen Sie Werte in diese."


0

Wenn Sie die Daten aus einer Tabelle X zu einer anderen Tabelle Y hinzufügen möchten , dies jedoch nicht können, weil die Datentypen nicht übereinstimmen , können Sie auch die folgenden Schritte ausführen:

  1. Exportieren Sie beide Tabellen (.dbf)

  2. Öffnen Sie Tabelle Y in Excel.

  3. Öffnen Sie Tabelle X in Excel.

  4. Kopieren Sie die Daten aus der Tabelle X und fügen Sie sie in die Tabelle Y ein, indem Sie sicherstellen, dass Sie nur die Werte und nicht das Formular kopieren.

  5. Sie haben jetzt eine neue Tabelle mit den Daten aus beiden Tabellen mit den entsprechenden Datentypen.

6.Importieren Sie diese Tabelle in ArcMap


0

Niemand hat die X-Ray Tools Suite für ArcGIS erwähnt. Führen Sie einfach eine Google-Suche nach "X-Ray ArcGIS" durch. Für jede ArcGIS-Version und -Plattform gibt es verschiedene Varianten (ArcCatalog, ArcMap). Hier ist eine Version. Hier ist noch einer. Es unterstützt viele feld- und domänenbezogene Funktionen, einschließlich des Änderns des Feldtyps, des Namens, des Alias, der Domänen usw. in MS Excel und des Hochladens von Änderungen zurück in die GDB.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.