计算单一州的 D 值
在本练习中,您将为 Georgia 州计算差异指数(Index of Dissimilarity)。请记住,其公式为:
$$D = \frac{1}{2}\sum{\left\lvert \frac{a}{A} - \frac{b}{B} \right\rvert}$$
在这里,A 组为 White,B 组为 Black。\(a\) 和 \(b\) 表示小地理单元(普查小区,tracts)的 White 和 Black 人口,\(A\) 和 \(B\) 表示更大包含地理(Georgia,邮政代码 = GA,FIPS 代码 = 13)的 White 和 Black 总人口。
已按惯例导入 pandas,并已加载包含 "white" 和 "black" 人口列的 tracts DataFrame。
本练习是课程的一部分
使用 Python 分析美国人口普查数据
练习说明
- 创建新的 DataFrame
ga_tracts,只包含 Georgia 的 tracts("state"列应等于 FIPS 代码"13")。 - 以列表形式提供列名(使用变量
w和b),打印 Georgia 中非西班牙裔 White 和 Black 的总和。 - 将每个 tract 的 White 人口除以 White 人口总和,再减去每个 tract 的 Black 人口除以 Black 人口总和;使用变量
w和b以提高代码可读性。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Define convenience variables to hold column names
w = "white"
b = "black"
# Extract Georgia tracts
ga_tracts = tracts[____]
# Print sums of Black and White residents of Georgia
print(ga_tracts[____].sum())
# Calculate Index of Dissimilarity and print rounded result
D = 0.5 * sum(abs(
____ / ____ - ____ / ____))
print("Dissimilarity (Georgia):", round(D, 3))