开始使用免费开始使用

在循环中计算 D

乔治亚州的差异指数为 0.544,这个值算高还是低?让我们与伊利诺伊州(FIPS = 17,芝加哥所在州)比较一下。

本练习将使用循环为所有州计算 $D$,然后比较乔治亚州与伊利诺伊州。

请记住,差异指数的公式为:

$$D = \frac{1}{2}\sum{\left\lvert \frac{a}{A} - \frac{b}{B} \right\rvert}$$

已按惯例导入了 pandas,并加载了包含人口列 "white""black"tracts 数据框。变量 wb 已分别被定义为列名 "white""black"

本练习是课程的一部分

使用 Python 分析美国人口普查数据

查看课程

练习说明

  • "state" 列上使用 unique() 方法,创建州 FIPS 代码的列表。
  • 使用 for 循环将 states 的每个元素(即每个 FIPS 代码)依次存入名为 state 的变量。
  • 按每个 state 的取值筛选 tracts 数据框,并赋给 tmp
  • 将公式应用于 tmp,为每个州计算 $D$,并将结果存入字典 state_D

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Get list of state FIPS Codes
states = list(tracts["state"].____)

state_D = {}  # Initialize dictionary as collector
for state in ____:
    # Filter by state
    tmp = ____
    
    # Add Index of Dissimilarity to Dictionary
    state_D[state] = 0.5 * sum(____)

# Print D for Georgia (FIPS = 13) and Illinois (FIPS = 17)    
print("Georgia D =", round(state_D["13"], 3))
print("Illinois D =", round(state_D["17"], 3))
编辑并运行代码