2011-11-10 13 views
14

गणित 8 में, मैं सूची के रूप में दिए गए घनत्व द्रव्यमान के साथ एक पृथक वितरण को परिभाषित करना चाहता हूं। उदाहरण के लिए,बिना किसी चेतावनी के द्रव्यमान की सूची के साथ मनमानी असतत संभाव्यता वितरण को परिभाषित करने के लिए

In[1] f = ProbabilityDistribution[{2/3, 1/3}[[x]], {x, 1, 2, 1}]; 

ऐसा लगता है।

"Part::pspec: Part specification x is neither an integer nor a list of integers." 

फिर भी, च सही ढंग से काम करने लगता है: बहरहाल, यह एक दो बार दोहराया चेतावनी उत्सर्जित। इस संदेश ने मुझे यह सोचा कि एक ही वितरण को परिभाषित करने का एक बेहतर तरीका हो सकता है। मैं सूची का उपयोग करके एक अलग वितरण को परिभाषित कैसे कर सकता हूं लेकिन चेतावनी का आह्वान किए बिना?

उत्तर

13

वजन की सूची को टुकड़े टुकड़े में परिवर्तित कर सकता है, और संभाव्यता वितरण को फ़ीड कर सकता है।

wts = {2/3, 1/3}; 
toPiecewise[wts_, x_] := 
Piecewise[MapIndexed[{#1, x == #2[[1]]} &, wts]] 

In[178]:= f = 
ProbabilityDistribution[toPiecewise[wts, x], {x, 1, 2, 1}] 

Out[178]= ProbabilityDistribution[ 
Piecewise[{{2/3, \[FormalX] == 1}, {1/3, \[FormalX] == 2}}, 0], 
    {\[FormalX], 1, 2, 1}] 

डैनियल Lichtblau

+0

आपके उत्तर के लिए धन्यवाद। यह काम करता है, और मैंने एक नया फ़ंक्शन मैपइन्डेक्स किया है! –

16

आप जब मानों की सूची से एक वितरण के निर्माण EmpiricalDistribution उपयोग कर सकते हैं:

empiricalDistribution = EmpiricalDistribution[{2/3, 1/3} -> {1, 2}] 

और आप तो अन्य सांख्यिकीय और दृश्य कार्यों में इसका उपयोग कर सकते हैं:

Plot[CDF[empiricalDistribution][x], {x, 0, 4}] 

फ़ंक्शन ProbabilityDistribution अधिक उपयुक्त है जब आपके पास पीडीएफ है।

+1

आपके उत्तर के लिए धन्यवाद। मैंने कोशिश की, और यह वास्तव में काम किया! काश मैं डैनियल और आपके उत्तरों दोनों को स्वीकार करने में सक्षम था। –

+0

हां, दोनों उत्तर एक अलग वितरण के निर्माण के बारे में अच्छी जानकारी प्रदान करते हैं – lkuty

संबंधित मुद्दे