ArcGIS öznitelik tablosunda veri türü değiştiriliyor mu?


9

Birden çok alan için ArcGIS'teki bir özellik tablosundaki veri türünü nasıl değiştirebilirim?

Örneğin, alanlar Excel'den bir dize olarak dışa aktarılmışsa ve bunları sayısal değerler olarak kullanmak ister miyim?


1
Veri Türleri eşleşmezse tablodan tabloya gerçekleştiremezsiniz. Denediğimi biliyorum.
Sam

lütfen veri kaynağı biçimine ve sürümüne dikkat edin. (ent veritabanı, şekil dosyası, dosyagdb, kişisel gdb?)
Brad Nesom

@Brad arcgis 10.2'deki şekil dosyaları ile çalışıyor, veri kaynağı yerel olarak bilgisayarımda
mücadele

Yanıtlar:



3

Masaüstü için hangi ArcGIS sürümünü kullandığınızı veya verilerinizin nerede depolandığını belirtmezsiniz, ancak ArcGIS 10.2 (veya daha yenisini) kullanarak nasıl yapılacağını açıklayan bir Değiştirme alanı özellikleri sayfası vardır:

Bazı alan özellikleri, tablo veya özellik sınıfı oluşturulduktan sonra değiştirilebilir

... ancak bu yalnızca boş alanlar için geçerlidir.

10.3'ten itibaren yukarıdaki işlevleri Alter Fields aracı ile de kullanabilirsiniz :

Alanları ve alan takma adlarını yeniden adlandırın veya alan özelliklerini değiştirin.


hassasiyet gerekir.
10.2.1'den

10.2.1'deki @GeoStoneMarten Alter alanları yalnızca alanları yeniden adlandırmak için görünürken, cevabım veri türlerini değiştirmekle ilgilidir ve bence geçerliliğini korumaktadır. Bununla birlikte, @Paul'un yanıtı , Alter Fields'in işlevselliğini 10.3'te veri türlerini değiştirmeyi içerecek şekilde genişlettiğini gösteriyor.
PolyGeo

Mevcut veri yoksa sadece evet değil ... Başka bir şey için sorun yok
GeoStoneMarten

2

Özellik sınıfınızda bulunan alanların alan veri türünü değiştirebilirsiniz. Ancak, metin alanlarını sayıya dönüştüremezsiniz. Ancak, sayısal alanlarınızı dizelere dönüştürebilirsiniz. Esri yardım sayfasına bir göz atın . Bu yalnızca Kurumsal coğrafi veritabanı için değil, dosya coğrafi veritabanı gibi masaüstü coğrafi veritabanları için bile iyi çalışır.

Tablo veya özellik sınıfı bir kuruluşta, çalışma grubunda veya masaüstü coğrafi veritabanındaysa , alan özelliklerini değiştirmek için tablo sahibi olarak bağlanmanız gerekir.

Excel ile uğraştığınızdan, veri türlerinizin doğru olduğundan emin olmanın en iyi yolu, herhangi bir veri almadan önce hücre veri türlerini doğrudan Excel'de tanımlamaktır. Bununla birlikte, sayılar içeren bir metin alanınız varsa, elbette sayısal türde yeni bir alan oluşturabilirsiniz (örneğin, tamsayı veya çift) ve değerleri bu metin alanına göre hesaplayabilirsiniz. Sayılarınız gerçekten rakamsa bu iyi çalışır ("12" işe yarar, ancak "12-1" işe yaramaz).


2

Bildiğim kadarıyla bu mümkün değil. 10.3'te Alan Değiştir , alan türünün değiştirilmesine izin verecek şekilde genişletildi; ancak yine de yalnızca tablonun kaydı olmadığında çalışır.

İşte bunu yapmak için bir yaklaşım:

  1. Geçici ad ve doğru veri türüne sahip yeni bir alan ekleyin
  2. Kullanım Calculate Fieldveya cursors(döküm ile, gerekirse)
  3. Eski alanı sil
  4. Alter Field geçici alanı yeniden adlandırmak
  5. (İsteğe bağlı) Orijinal siparişi geri yüklemek için tabloyu bazı alan eşlemeleriyle kopyalayın

Bunu hiç araştırmadım, ancak alan eşleme, bu işlemi önemli ölçüde basitleştirecek yeni veri türlerine alan oluşturmak için işe yarayabilir. Emin olmak için bir şey ....


1
Genellikle önce eski alanı yeniden adlandırırım. bu şekilde yeni alanı yeniden oluşturabilir, değerleri hesaplayabilir ve sonra eski alanı silebilirim. değerleri hesaplamaya başladığınızda, tüm boş olmayan değerleri seçmeniz gerekebilir. ve / veya herhangi bir dize değerini dönüştürür / böler
Brad Nesom

1
ayrıca et tools yardımcı olabilecek bazı ücretsiz işlevlere sahiptir. ian-ko.com Coğrafi sihirbazların ücretsiz işlevlerine bakın.
Brad Nesom

@Brad Ben ücretsiz işlevler bakıyordum, xtools yardımcı oldu ama im her zaman daha / daha iyi seçeneklere açık. giriş için teşekkür ederim
Mücadele

@BradNesom, iyi bir nokta! Bu çok daha mantıklı olurdu.
Paul

1

Alternatif bir yol, .dbfdosyanızı OpenOffice Calc (veya eşdeğeri) içinde açıp sütunlarının başlıklarını dikkatlice değiştirmektir. Örneğin, türü C(Karakter) yerine N(Sayısal) olarak değiştirin. Basit bir öneri: denemeden önce dosyanızı yedekleyin.


1

Veri kümesinin kendisinde alan adı ve veri türünü değiştiremeseniz de, ArcGIS aracını "Feature sınıftan özellik sınıfına" kullanarak istenen değişikliklerle bir kopya oluşturmak mümkündür. Ayarlarda adları, veri türlerini ve alanların diğer özelliklerini değiştirebilirsiniz.


1

Başka bir şeyden önce, ArcGIS'in bir alanı neden sayısal / çift veri türü yerine dize türü olarak içe aktardığını anlamaya çalışmak gerekir. Hücreniz (Excel'de) boş olsa bile, içinde "boşluklar" varsa (boşluk çubuğuna bastığınızda olduğu gibi), ArcGIS'in bunları karakter olarak yorumlayacağını buldum. Bunları kaldırırsanız, artık sayısal alanlar olarak kaydedileceklerini göreceksiniz.


0

Bu belgeye bir göz atın . Genellikle, içe aktarmadan önce ve sonra verilerin doğru biçimde olduğundan emin olmanız gerekir.

"ArcGIS, e-tablo sayısal alanlarını genellikle gereksinimlerinizi karşılamayabilecek çift duyarlığa (Double) dönüştürür. Gerekirse, istediğiniz türde yeni alanlar oluşturun ve bu değerlere değerleri hesaplayın"


0

Amacınız X tablosundaki verileri başka bir Y tablosuna eklemekse , ancak veri türleri uyuşmadığından bunu yapamıyorsanız, aşağıdaki adımları da uygulayabilirsiniz:

  1. Her iki tabloyu da dışa aktar (.dbf)

  2. Excel'de tablo Y'yi açın.

  3. Excel'de tablo X'i açın.

  4. Formu değil, yalnızca değerleri kopyaladığınızdan emin olarak verileri X tablosundan Y tablosuna kopyalayıp yapıştırın.

  5. Artık her iki tablodaki verileri, karşılık gelen veri türleriyle içeren yeni bir tablonuz var.

Bu tabloyu ArcMap'te içe aktarın


0

Kimse ArcGIS için X-Ray alet takımından bahsetmedi. "X-Ray ArcGIS" için bir Google araması yapmanız yeterlidir. Her bir ArcGIS sürümü ve platformu için çeşitli varyantlar vardır (ArcCatalog, ArcMap). İşte bir versiyon. İşte başka. MS Excel'de alan türünü, adı, takma adı, etki alanlarını vb. Değiştirme ve değişiklikleri tekrar GDB'ye yükleme de dahil olmak üzere birçok Alan ve Alanla ilgili işlevi destekler.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.