我正在尝试计算P(A=a|B=b,C=c)
的条件概率,其中a
是['high', 'medium', 'low']
中的元素,b是['0-20', '20-40', '40-60', '60-80', '80-inf']
中的元素,而c
是['male', 'female']
中的元素。
我有一个字典,其频率如下:
{('high', '0-20', 'female'): 11,
('high', '0-20', 'male'): 43,
('high', '20-40', 'female'): 10,
('high', '20-40', 'male'): 17,
('high', '40-60', 'female'): 11,
('high', '40-60', 'male'): 10,
('high', '60-80', 'female'): 2,
('high', '60-80', 'male'): 1,
('high', '80-inf', 'female'): 0,
('high', '80-inf', 'male'): 0,
('low', '0-20', 'female'): 130,
('low', '0-20', 'male'): 159,
('low', '20-40', 'female'): 186,
('low', '20-40', 'male'): 297,
('low', '40-60', 'female'): 71,
('low', '40-60', 'male'): 144,
('low', '60-80', 'female'): 35,
('low', '60-80', 'male'): 53,
('low', '80-inf', 'female'): 1,
('low', '80-inf', 'male'): 2,
('medium', '0-20', 'female'): 90,
('medium', '0-20', 'male'): 194,
('medium', '20-40', 'female'): 72,
('medium', '20-40', 'male'): 116,
('medium', '40-60', 'female'): 46,
('medium', '40-60', 'male'): 49,
('medium', '60-80', 'female'): 12,
('medium', '60-80', 'male'): 22,
('medium', '80-inf', 'female'): 1,
('medium', '80-inf', 'male'): 2}
我想要的是一本看起来像的字典:
{('high', '0-20', 'female'): P(A='high'| B='0-20', C='female'),
etc...,
}
答案 0 :(得分:0)
所以,如果我正确地理解你的评论,那么你遇到麻烦的是当有两个或更多条件时计算条件概率的概念"而不是单一的条件。
自从我上次参加概率/统计课程以来已经有一段时间了,但我认为你需要做的就是把它分解成单独的问题。从数据中,您可以轻松计算出P(B=b)
和P(C=c)
。您接下来需要的是B=b
和C=c
的联合概率,您也应该能够直接从数据中获取 - 例如P(high, 0-20)
只是匹配两个条件除以总计数的所有点的总和。如果你称之为联合概率P(X)
,则从条件概率的定义来计算P(A = a | X)= P(A =a∩X)/ P(X)应该相当简单。
最好重新发布此信息或将其迁移到Math SE网站,以获得确认和/或更好的答案......