【问题标题】:Calculating Conditional Probabilities from frequencies in Python在 Python 中根据频率计算条件概率
【发布时间】:2015-01-06 17:35:05
【问题描述】:

我正在尝试计算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...,
}

【问题讨论】:

  • 到目前为止你尝试了什么?
  • 那些看起来不像频率......它们看起来更像是需要除以总计数才能产生频率的计数......它是否处理给定的数据以便得到你不理解的起始频率,或者条件概率的概念以及如何从离散概率中计算它们?
  • @twalberg 你是对的,这些是总数量。它是计算条件概率的概念,因为它们以多个变量为条件。

标签: python probability probability-theory


【解决方案1】:

因此,如果我正确理解您的评论,那么您遇到的问题是当有两个或多个“条件”而不是单个条件时计算条件概率的概念。

自从我上次参加概率/统计课程以来已经有一段时间了,但我认为您需要做的是将其分解为单独的问题。从数据中,您可以轻松计算出您的P(B=b)P(C=c)。接下来你需要的是B=bC=c 的联合概率,你也应该能够直接从数据中获得 - 例如P(high, 0-20) 只是匹配这两个条件的所有点的总和除以总数。如果你把这个联合概率称为P(X),那么从条件概率的定义中计算出P(A=a|X) = P(A=a ∩ X) / P(X)应该是相当简单的。

不过,将其重新发布或将其迁移到 Math SE 站点可能是个好主意,以获得确认和/或更好的答案...

【讨论】:

    猜你喜欢
    • 2016-04-12
    • 1970-01-01
    • 1970-01-01
    • 2018-11-24
    • 2022-11-14
    • 1970-01-01
    • 2015-02-06
    • 2016-10-15
    相关资源
    最近更新 更多