在内存中使用ArcPy统计分析计算平均值

2024-09-29 21:37:09 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,在选定的值中要计算中值。在

arcpy.env.workspace = r"Database Connections\local.sde"
pLoc = "local.DBO.Parcels"
luLoc = "local.DBO.Land_Use"
luFields = ["MedYrBlt","MedVal","OCCount"]
arcpy.MakeFeatureLayer_management(pLoc,"cities_lyr")
arcpy.SelectLayerByAttribute_management("cities_lyr", "NEW_SELECTION", "YrBlt > 1000")

从所选城市中,要计算YrBlt的平均值字段

^{pr2}$

有个问题: 我只想看看平均值,我怎么做?在


luFields = ["MedYrBlt","MedVal","OCCount"] 

以后会用到现在不重要。在


Tags: envlocalmanagementworkspace平均值citiesarcpydbo
1条回答
网友
1楼 · 发布于 2024-09-29 21:37:09

向空数组追加值,然后计算该数组的平均值。例如:

# Create array & cycle through years, append values to array
yrArray =[]
for row in cursor:
    val = getValue("yrBlt")
    yrArray.append(val)

#get sum of all values in array
x = 0
for i in yrArray: 
    x += i

#get average by dividing above sum by the length of the array. 
meanYrBlt = x / len(yrArray)

另一方面,将这些过程分离成自己的类可能是有益的。例如:

^{pr2}$

这样,您可以通过调用以下命令重用代码:

yrBltAvg = arrayAvg(yrArray)
avg = yrBltAvg.avg #returns average
count = yrBltAvg.count #returns count

第二部分是不必要的,但是允许您利用面向对象编程,并且您可以在整个程序中扩展它。在

相关问题 更多 >

    热门问题