Comment puis-je modifier le type de données dans une table attributaire dans ArcGIS pour plusieurs champs?
Par exemple, si les champs ont été exportés sous forme de chaîne à partir d'Excel et que je voudrais les utiliser comme valeurs numériques?
Comment puis-je modifier le type de données dans une table attributaire dans ArcGIS pour plusieurs champs?
Par exemple, si les champs ont été exportés sous forme de chaîne à partir d'Excel et que je voudrais les utiliser comme valeurs numériques?
Réponses:
Vous ne pouvez pas modifier le type de données d'un champ dans ArcGIS, vous devrez créer de nouveaux champs avec les types de données que vous souhaitez et les remplir avec les valeurs de vos champs actuels. Voir: Comment changer les formats de champ dans la géodatabase ArcGIS 10.1?
Vous ne mentionnez pas la version d'ArcGIS for Desktop que vous utilisez ni l'emplacement de stockage de vos données, mais une page de modification des propriétés de champ décrit comment, à l'aide d'ArcGIS 10.2 (ou version ultérieure):
Certaines propriétés de champ peuvent être modifiées après la création de la table ou de la classe d'entités
... mais cela ne s'applique qu'aux champs vides.
Depuis 10.3, la fonctionnalité ci-dessus est également disponible via l' outil Alter Fields :
Renommez les champs et les alias de champs ou modifiez les propriétés des champs.
Vous pouvez modifier le type de données de champ pour les champs que vous avez dans votre classe d'entités. Cependant, vous ne pourrez pas convertir les champs de texte en numérique. Cependant, vous pouvez convertir vos champs numériques en chaînes. Jetez un œil à la page d'aide d'Esri . Ce n'est pas seulement pour la géodatabase d'entreprise, cela fonctionne bien même pour les géodatabases de bureau telles que la géodatabase fichier.
Si la table ou la classe d' entités se trouve dans une géodatabase d' entreprise, de groupe de travail ou de bureau , vous devez vous connecter en tant que propriétaire de la table pour modifier les propriétés de champ.
Étant donné que vous traitez avec Excel, la meilleure façon de vous assurer que vos types de données sont corrects consiste à définir les types de données des cellules directement dans Excel avant d'importer des données. Si vous avez cependant un champ de texte avec des nombres, vous pouvez bien sûr créer un nouveau champ de type numérique (entier ou double par exemple) et calculer les valeurs en fonction de ce champ de texte. Cela fonctionnera bien si vos nombres sont vraiment des nombres ("12" fonctionnera, mais "12-1" ne fonctionnera pas).
À ma connaissance, ce n'est pas possible. Dans 10.3, Alter Field a été développé pour permettre de modifier le type de champ; cependant, il ne fonctionne toujours que lorsque la table n'a aucun enregistrement.
Voici une approche pour ce faire:
Calculate Field
ou cursors
(avec moulage, si nécessaire)Alter Field
renommer le champ temporaireJe ne l'ai jamais étudié, mais le mappage de champs peut fonctionner pour convertir des champs en nouveaux types de données, ce qui simplifierait considérablement ce processus. Quelque chose à examiner à coup sûr ....
Une autre manière consiste à ouvrir votre .dbf
fichier dans OpenOffice Calc (ou équivalent) et à modifier soigneusement les en-têtes de ses colonnes. Par exemple, changez le type de C
(Caractère) en N
(Numérique). Un conseil simple: sauvegardez votre fichier avant d'essayer.
Bien que vous ne puissiez pas modifier le nom du champ et le type de données dans l'ensemble de données lui-même, il est possible de créer une copie avec les modifications souhaitées à l'aide de l'outil ArcGIS "Classe d'entités en classe d'entités". Dans les paramètres, vous pouvez modifier les noms, les types de données et d'autres caractéristiques des champs.
Avant toute chose, il faut essayer de comprendre pourquoi ArcGIS importe un champ en tant que type de chaîne au lieu d'un type de données numérique / double. J'ai trouvé que même si votre cellule (dans Excel) est vide, si elle contient des "espaces" (comme lorsque vous appuyez sur la barre d'espace), ArcGIS les interprétera comme des caractères. Si vous les supprimez, vous verrez qu'ils seront désormais enregistrés sous forme de champs numériques.
Jetez un œil à ce document . Vous devez généralement vous assurer que les données sont au bon format avant et après l'importation.
"ArcGIS convertit généralement les champs numériques de la feuille de calcul en double précision (Double), ce qui peut ne pas répondre à vos besoins. Si nécessaire, créez de nouveaux champs du type souhaité et calculez-y des valeurs"
Si votre objectif est d' ajouter les données d'une table X à une autre table Y , mais que vous ne le pouvez pas car les types de données ne correspondent pas , vous pouvez également suivre ces étapes:
Exporter les deux tables (.dbf)
Ouvrez la table Y en excel.
Ouvrez la table X dans Excel.
Copiez et collez les données du tableau X dans le tableau Y en vous assurant que vous copiez uniquement les valeurs, pas le formulaire.
Vous avez maintenant une nouvelle table contenant les données des deux tables, avec les types de données correspondants.
6.Importez ce tableau dans ArcMap
Personne n'a mentionné la suite d'outils X-Ray pour ArcGIS. Faites simplement une recherche Google pour "X-Ray ArcGIS". Il existe plusieurs variantes pour chaque version et plate-forme ArcGIS (ArcCatalog, ArcMap). Voici une version. En voici un autre. Il prend en charge de nombreuses fonctions liées aux champs et aux domaines, notamment la modification du type de champ, du nom, de l'alias, des domaines, etc. dans MS Excel et le téléchargement des modifications dans la GDB.