タグ付けされた質問 「field-calculator」

QGIS、ArcGIS Desktopなどのフィールド計算機とそれらのフィールド計算ツールに関する質問に使用します

1
QGISフィールド計算機の条件ステートメントの構文
変更する必要があるシェープファイルがあります。属性「A」、「B」、および「C」を持つ1つの列「CLASS」があります。「A」を「1」に、「B」を「2」に、「C」を「3」に変更する必要があります。case when機能で試してみました。1つのケースでは問題ではありませんが、3行でどのように機能しますか? FieldCalculator関数でモデルを構築することも可能ですか? 私はそれを理解したと思います!これは正しいですか? CASE WHEN "VSt_K" IS 'E' THEN '5' WHEN "VSt_K" IS 'A' THEN '1' WHEN "VSt_K" IS 'B' THEN '2' WHEN "VSt_K" IS 'C' THEN '3' END しかし、モデラーFieldCalculator関数ではこれを使用できません...

2
Field CalculatorでPythonを使用してDMSからDDに変換しますか?
私は、データに度、分、秒のように表現される緯度/経度に変換する必要があるに小数度。たとえば、データでは、Latitude列にN335042.06、Longitude列にW86031.04としてリストされています。DMSをDDに、またはその逆に変換するスクリプトを作成する前にこの問題を実行したことがあるので、そこからビットを使用できると思います。しかし、私が抱えている問題は、データの「N」と「W」を無視する方法です(より良い言葉がないため)?それらをスキップできますか?また、DMSは、記号やスペースなしですべて一緒にリストされます。 私が使用することができlen()、range()、split()値からの読み取りにどの部分を指定するには?たとえば、次のことができますか? N335042.06ここで、33 =度50 =分42.06 =秒...? この ESRIの記事に出会いましたが、それはVBにあります。おそらくリファレンスとして使用しますが、用語/構文の一部はPythonとは異なります。 動作する最終コード! # Pre-logic def latDD(x): D = int(x[1:3]) M = int(x[3:5]) S = float(x[5:]) DD = D + float(M)/60 + float(S)/3600 return DD # Expression latDD(!Latitude!)

3
Field Calculatorで文字列置換機能を使用する方法は?
属性テーブル内で、 'replace'関数を使用して、ある文字列を別の文字列に置き換えようとしています。例として、フィールド「NAME」に文字列「(B)」が含まれている機能がいくつかあり、これを「County」という単語に置き換えたいと考えています。「既存のフィールドを更新する」チェックボックスを選択し、次の式を使用しています replace( '(B)','(B)','County') 最終結果は、フィールド「NAME」に元々ストリング「(B)」が含まれていたかどうかに関係なく、すべての機能のフィールド「NAME」が「County」に置き換えられることです。任意の助けをいただければ幸いです。

3
ArcGIS Desktopを使用して連続番号をソート済みテーブルに計算しますか?
連番でソートされたフィールドを計算する方法はありますか?ArcGIS Field Calculatorを使用してシーケンシャルIDフィールドを計算するソートフィーチャクラスを見ましたか?連番の計算方法の概要を説明しますが、これは常にソート順ではなくFID順で計算されます。 #Pre-logic Script Code: rec=0 def autoIncrement(): global rec pStart = 1 pInterval = 1 if (rec == 0): rec = pStart else: rec += pInterval return rec #Expression: autoIncrement() 私がやろうとしていることの例。年、月、日でソートするために高度なソートを使用しましたが、Seqフィールドに連番を付けたいと考えています。あなたは私のOBJECTIDフィールドが整頓されていないことがわかりますので、上記のコードは動作しません。 これは、フィールド計算機またはarcpyの更新カーソルを使用して実行できますか?

2
PythonとArcGIS Desktopを使用して、別の属性の変更に基づいて新しい属性を計算しますか?
一連のgps時間エンコードポイントデータを、異なる属性に基づいて動作に分類しようとしています。 自宅に0、自宅に1の属性を作成しましたが、自宅からの旅行に番号を付けたいと思います(自宅01111111111110で開始および終了するため、ポイントのセットは1つの旅行になります)。旅行番号を持つ属性フィールドを追加しましたが、フィールドの計算方法がわからないため、ホーム/アウェイフィールドに基づいています。 GPSデータの例(「*」を使用して無関係な情報を示し、時間を1、2などとして単純にインデックス付けします)、上記の「ホーム/アウェイ」インジケータ、および希望のトリップインジケータ「トリップ」、計算する必要があります: Time Lat Lon Home/Away Trip 1 * * 0 0 2 * * 1 1 3 * * 1 1 .... 12 * * 1 1 13 * * 0 0 14 * * 0 0 15 * * 1 2 16 * * 1 2 .... …

7
ArcGIS DesktopでラスターDEM標高をベクター属性テーブルに抽出しますか?
複数のレイヤーグループを持つArcMap 10プロジェクトがあります。1つのレイヤーはラスターDEMで、もう1つのレイヤーグループは一連のベクターシェープファイル(ポイント、ライン、ポリゴンを含む)です。クライアントは、すべてのベクトルデータにZ値を含めることを望んでいます。 ベクトルデータの属性テーブルにX値とY値を設定するのは簡単ですが、Z値を設定するにはどうすればよいですか? フィールドカリキュレーターを使用して、各ベクトルフィーチャのDEMレイヤーから高さの値を「取得」する方法はありますか? 3DアナリストまたはSpatialアナリストの拡張機能のライセンスがないことを付け加えておきます。

3
QGISのField Calculatorを使用して重心座標で列を更新する
QGISで、ポリゴンの重心の東座標と北座標で2つの列を更新したいと思います。私はフィールド計算機を使用しています。$ xと$ yを使用してみましたが、これはポイントに対してのみ機能するようです。 私はヘルプをチェックしましたが、これを行うことができることについては言及していないようです。


1
QGIS-カスタム関数がフィールド計算機に表示されない
私はエッセンを使用していて、アニタグレイザーの素晴らしいチュートリアルIlluminated contoursをフォローしようとしています。azimuth関数を作成してロードしましたが、式タブには何も表示されていません。デフォルトの関数を使用したカスタムでさえもありません。式azimuth.pyはC :\Users\Max\.qgis2\python\expressionsと同じように.pycファイルに関連付けられて存在します。QGISを再起動しても違いはありません

1
ArcGIS Proでフィールド計算を元に戻しますか?
ArcGIS Proを使用していますが、フィールドの計算を元に戻す方法が見つかりません。 ArcGIS 10.x for Desktopでは、編集セッションがアクティブなときにフィールドの計算を元に戻すことができましたが、Proはフィールドの計算を元に戻す機能を含まない永続的な編集セッションにいるようです。 ArcGIS Proでフィールド計算を元に戻すことはできますか?

1
フィーチャクラス内のグループに基づいてフィールドを自動インクリメントしますか?
フィーチャクラス内のグループに基づいてフィールドを自動インクリメントする必要があります。特定のポリゴン内に8つのプロットがあり、各ポリゴン内のプロットのセットごとに1〜8のIDを割り当てる必要があります。ポリゴンには、プロットをグループ化するために使用される独自のID番号があります。 私はそれがこれの変更になると思います: rec=0 def autoIncrement(): global rec pStart = 1 pInterval = 1 if (rec == 0): rec = pStart else: rec = rec + pInterval return rec

2
datetime.date.today()から今日の日付で日付フィールドを計算していますか?
arcpy.CalculateField_managementを使用して現在の日付を属性テーブルに追加するツールの一部に取り組んでいます。私はインターウェブをずっとさまよいましたが、この問題の解決策を見つけることができません。 このコードを使用すると、「12:00:00 AM」という値が返されます input = r'C:\GIS\CARGIS\SHAPES.gdb\CRASH_ON_2013' today = datetime.date.today() dte = today.strftime('%m/%d/%Y') arcpy.CalculateField_management(input,"DTCARXTRCT",dte,"PYTHON") このコードを使用すると、今日の日付「10/07/2014」から値「06/19/1905」を取得します input = r'C:\GIS\CARGIS\SHAPES.gdb\CRASH_ON_2013' today = datetime.date.today() dte = str(today) arcpy.CalculateField_management(input,"DTCARXTRCT",dte,"PYTHON") 私が間違っていることについて何か考えはありますか?更新カーソルの使用を避けたいのですが、それが最後のオプションであればそうします。

2
QGIS Field Calculatorの列ヘッダーにワイルドカードを使用していますか?
(フィールド計算機で)そのようなフィールドにワイルドカードを使用できることを知っています: case when "column" ILIKE '%example%' then 1 else 0 end 列ヘッダー自体にも同様のことができますか? (Joinsプロパティを使用して)複数のレイヤーを結合しているため、列名に結合されたレイヤー名を含める必要があるため、複数のフィルターを編集するよりも1セットのフィルターを編集する方が簡単なので、これを質問します。 QGIS 2.2を使用しています。

1
ArcGIS for Desktopのフィールド計算機でIfステートメントを実行するにはどうすればよいですか?
2つの数値フィールド( "Dist_1"と "Dist_2")を含むシェープファイルがあります。追加のフィールド(「結果」)に3つの回答のいずれかを入力するフィールド計算が必要です。 最初に、Dist_1がDist_2より大きい場合、結果に「True」を入力します。2番目に、Dist_1がDist_2より小さい場合、「False」を入力し、3番目に、Dist_1とDist_2が等しい場合、「等しい」を入力します。

4
同じ単語を2回含む文字列を検索する必要がある
所有者名の属性データがあります。姓を2回含むデータを選択する必要があります。 たとえば、「BENNETT MCCARL&ARNETTE BENNETT」という所有者名があるとします。 上記の例のように、姓が繰り返し出現する属性テーブルの行を選択します。そのデータを選択する方法を誰かが知っていますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.