1964 में Civil Rights Act पर वोट
1964 का Civil Rights Act USA में पारित सबसे महत्वपूर्ण कानूनों में से एक था। "present" और "abstain" वोटों को छोड़कर, 153 हाउस Democrats और 136 Republicans ने yea में वोट किया। हालाँकि, 91 Democrats और 35 Republicans ने nay में वोट किया। क्या पार्टी संबद्धता ने वोट पर असर डाला?
इस प्रश्न का उत्तर देने के लिए, आप यह परिकल्पना परखेंगे कि किसी हाउस सदस्य की पार्टी का उसके वोट पर कोई प्रभाव नहीं है। आप अपने टेस्ट स्टैटिस्टिक के रूप में पक्ष में वोट करने वाले Democrats के अनुपात का उपयोग करेंगे और यह संभावना आँकेंगे कि पक्ष में वोट करने वाले Democrats का देखा गया अनुपात 153/244 जितना छोटा या उससे भी छोटा हो। (हाँ, जितना छोटा हो। 1964 में, सिविल राइट्स मुद्दों पर कम प्रोग्रेसिव Democrats ही थे।) ऐसा करने के लिए, हाउस वोटर्स के पार्टी लेबल्स को permute करें, फिर उन्हें मनमाने ढंग से "Democrats" और "Republicans" में बाँटें और Democrats के yea वोट का अनुपात निकालें.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Statistical Thinking in Python (Part 2)
अभ्यास निर्देश
- संबंधित पार्टियों के वोट्स वाले Boolean arrays
demsऔरrepsबनाएँ; जैसे,demsमें 153Trueएंट्रियाँ और 91Falseएंट्रियाँ हों. - एक फ़ंक्शन लिखें,
frac_yea_dems(dems, reps)जो yea में वोट करने वाले Democrats का अनुपात लौटाए। पहला इनपुट Booleans का array है। आपकेdraw_perm_reps()फ़ंक्शन का उपयोग करने के लिए दो इनपुट चाहिए होते हैं, लेकिन दूसरा इनपुट यहाँ उपयोग नहीं होगा. - अपने
draw_perm_reps()फ़ंक्शन का उपयोग करके Democrat yea वोट्स के अनुपात के 10,000 permutation replicates ड्रॉ करें. - p-value की गणना करें और प्रिंट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Construct arrays of data: dems, reps
dems = np.array([True] * 153 + [False] * 91)
reps = ____
def frac_yea_dems(dems, reps):
"""Compute fraction of Democrat yea votes."""
frac = ____ / ____
return frac
# Acquire permutation samples: perm_replicates
perm_replicates = ____(____, ____, frac_yea_dems, ____)
# Compute and print p-value: p
p = np.sum(____ <= 153/244) / len(____)
print('p-value =', p)