属性テーブルの個々のセル (特定の列の行) を、その直前のセルの値と同じ行の他の列のデータに基づいて更新するスクリプトを開発したいと考えています。これはカーソルで実行できると確信していますが、これに取り組む方法を正確に概念化するのに苦労しています。
基本的に私がやりたいことはこれです:
列 A、行 13 = 特定の値 AND 列 B、行 13 = 特定の値 (ただし、A とは異なる) の場合、列 A、行 13 を列 A、行 12 と同じ値に変更します。
これがカーソルで実行できない場合は、ある種の配列または行列、またはリストのリストが適しているでしょうか? 私は基本的に、これでとるべき最善の方向性を探しています。編集: 私のファイルはシェープファイルであるか、.csv 形式でもあります。私のコードは今本当に基本的です:
import arcpy
from arcpy import env
env.workspace = "C:/All Data Files/My Documents All/My Documents/wrk"
inputLyr = "C:/All Data Files/My Documents All/My Documents/wrk/file.lyr"
fields = ["time", "lon", "activityIn", "time", "fixType"]
cursor180 = arcpy.da.SearchCursor(inputLyr, fields, """"lon" = -180""")
for row in cursor180:
# Print the rows that have no data, along with activity Intensity
print row[0], row[1], row[2]