เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การคำนวณ D ในลูป

ค่า Index of Dissimilarity ของจอร์เจียที่ 0.544 นั้นสูงหรือต่ำ? มาเปรียบเทียบกับอิลลินอยส์ (FIPS = 17) รัฐที่เป็นที่ตั้งของชิคาโกกัน

ในแบบฝึกหัดนี้ จะใช้ลูปคำนวณ \(D\) สำหรับ ทุกรัฐ แล้วจึงเปรียบเทียบค่าของจอร์เจียกับอิลลินอยส์

โปรดจำไว้ว่าสูตรของ Index of Dissimilarity คือ:

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

pandas ถูก import ไว้แล้วด้วย alias ปกติ และ DataFrame tracts ที่มีคอลัมน์ประชากร "white" และ "black" ได้ถูกโหลดไว้แล้ว ตัวแปร w และ b ถูกกำหนดให้เก็บชื่อคอลัมน์ "white" และ "black" ตามลำดับ

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์ข้อมูลสำมะโนประชากรสหรัฐฯ ด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้เมธอด unique() กับคอลัมน์ "state" เพื่อสร้างรายการรหัส FIPS ของแต่ละรัฐ
  • ใช้ for-loop เพื่อนำแต่ละองค์ประกอบของ states (นั่นคือรหัส FIPS แต่ละรหัส) มาเก็บในตัวแปรชื่อ state
  • กรอง DataFrame tracts ตามค่าของ state แต่ละค่า แล้วกำหนดผลลัพธ์ให้กับ tmp
  • คำนวณ \(D\) สำหรับแต่ละรัฐโดยใช้สูตรกับ tmp แล้วเก็บผลลัพธ์ไว้ในพจนานุกรม 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))
แก้ไขและรันโค้ด