起手牌牌型总数:1326
choose(52,2)## [1] 1326起手牌拿到至少一张特定点数的牌,例如(A,X)或(A,A)的概率:14.93%
1 - choose(48,2)/choose(52,2)## [1] 0.1493213起手牌是任意两单张,在flop提升为一对的概率:28.96%
choose(44,2)*3*2/choose(50,3)## [1] 0.2895918起手牌是任意两单张,在flop未击中任何对子的概率:67.57%
choose(44,3)/choose(50,3)## [1] 0.6757143起手牌是任意两单张,在flop提升为两对的概率:2.02%
3*3*(52-4-4)/choose(50,3)## [1] 0.02020408起手牌是任意两单张,在flop成为天葫芦的概率:0.09%
choose(3,2)*choose(3,1)*2/choose(50,3)## [1] 0.0009183673起手牌是任意两单张,在flop成为四条的概率:0.01%
2/choose(50,3)## [1] 0.0001020408任意两单张例如(A,K),一直看到river,至少击中一对的概率:48.74%
1 - choose(44,5)/choose(50,5)## [1] 0.4874323起手牌拿到特定口袋对子(AA或KK)的概率:0.45%
choose(4,2) / 1326## [1] 0.004524887起手牌拿到任意口袋对子(AA或22等)的概率:5.88%
choose(4,2) * 13 / 1326## [1] 0.05882353起手牌拿到口袋对子QQ+的概率:1.36%
choose(4,2)*3/choose(52,2)## [1] 0.01357466起手牌拿到口袋对子JJ+的概率:1.81%
choose(4,2)*4/choose(52,2)## [1] 0.01809955起手牌拿到口袋对子TT+的概率:2.26%
choose(4,2)*5/choose(52,2)## [1] 0.02262443起手牌拿到两张K+(包含口袋对子)的概率:2.11%
(6*2+16)/choose(52,2)## [1] 0.02111614起手牌拿到两张Q+(包含口袋对子)的概率:4.98%
(6*3+16*3)/choose(52,2)## [1] 0.04977376起手牌拿到两张J+(包含口袋对子)的概率:9.05%
(6*4+16*6)/choose(52,2)## [1] 0.09049774起手牌拿到两张T+(包含口袋对子)的概率:14.33%
(6*5+16*10)/choose(52,2)## [1] 0.1432881任意口袋对子在flop击中Set的概率(标准计算):11.51%
choose(48,2)*2/choose(50,3)## [1] 0.115102在4-9人局中,口袋对子在flop击中暗三条(Set)的概率:13%,13.6%,14.2%,14.97%,15.7%,16.6%
playerNum <- c(4:9)
blockNum <- 0   ## 此处范围为0到2
probFlopSet <- choose((52 - playerNum*2 -2),2)*(2 - blockNum) / choose((52 - playerNum*2),3)
PFS <- round(probFlopSet,3)
## print(PFS)
## plot(playerNum,PFS)
library(ggplot2)
data <- data.frame(
  category = playerNum,
  value = PFS,
  x = playerNum,
  y = PFS,
  family = PFS
)
ggplot(data, aes(x =playerNum, y = value)) +
  geom_point(stat = "identity") +
  geom_text(aes(label = (paste0(PFS*100,"%"))),nudge_y = 0.05,size = 3)+
  coord_cartesian(ylim = c(0, 1)) +
  scale_y_continuous(labels = scales::percent) +
  labs(y = "PFS") +
  labs(title = paste("Hit set on flop"),subtitle = "by aft_null")在4-9人局中,口袋对子在turn上击中Set的概率:4.88%,5.13%,5.41%,5.71%,6.06%,6.45%
playerNum <- c(4:9)
probTurnSet <- 2 / (52 -playerNum*2 - 3)
PTS <- round(probTurnSet,4)
## print(PTS)
library(ggplot2)
data <- data.frame(
  category = playerNum,
  value = PTS,
  x = playerNum,
  y = PTS,
  family = PTS
)
ggplot(data, aes(x =playerNum, y = value)) +
  geom_point(stat = "identity") +
  geom_text(aes(label = (paste0(PTS*100,"%"))),nudge_y = 0.05,size = 3)+
  coord_cartesian(ylim = c(0, 1)) +
  scale_y_continuous(labels = scales::percent) +
  labs(y = "PTS") +
  labs(title = paste("Hit set on turn"),subtitle = "by aft_null")在4-9人局中,口袋对子在river击中Set的概率:5%,5.26%,5.56%,5.88%,6.25%,6.67%
playerNum <- c(4:9)
probRiverSet <- 2 / (52 - playerNum*2 - 4)
PRS <- round(probRiverSet,4)
## print(PRS)
library(ggplot2)
data <- data.frame(
  category = playerNum,
  value = PRS,
  x = playerNum,
  y = PRS,
  family = PRS
)
ggplot(data, aes(x =playerNum, y = value)) +
  geom_point(stat = "identity") +
  geom_text(aes(label = (paste0(PRS*100,"%"))),nudge_y = 0.05,size = 3)+
  coord_cartesian(ylim = c(0, 1)) +
  scale_y_continuous(labels = scales::percent) +
  labs(y = "PRS") +
  labs(title = paste("Hit set on river"),subtitle = "by aft_null")口袋对子在flop击中四条(Quads)的概率:0.24%
48 / choose(50,3)## [1] 0.00244898口袋对子preflop ALL IN, 走到river击中Set或Quads的概率:18.4% + 0.82% = 19.2%
(choose((48),4) * 2 + choose(48,3))  / choose(50,5)## [1] 0.1918367起手牌是Suited的概率:23.5%
choose(13,2) * 4 / 1326## [1] 0.2352941在4-9人局中,Suited在flop击中Flush,也就是“天金”的概率:1.2%,1.4%,1.7%,2%,2.8%
playerNum <- c(4:9)
probFlopFlush <- choose(11,3) / choose((52 - playerNum*2),3)
PFF <- round(probFlopFlush,3)
## print(PFF)
library(ggplot2)
data <- data.frame(
  category = playerNum,
  value = PFF,
  x = playerNum,
  y = PFF,
  family = PFF
)
ggplot(data, aes(x =playerNum, y = value)) +
  geom_point(stat = "identity") +
  geom_text(aes(label = (paste0(PFF*100,"%"))),nudge_y = 0.05,size = 3)+
  coord_cartesian(ylim = c(0, 1)) +
  scale_y_continuous(labels = scales::percent) +
  labs(y = "PFF") +
  labs(title = paste("Hit flush on flop"),subtitle = "by aft_null")在4-9人局中,Suited在flop形成同花听牌后,在转牌圈击中Flush,也就是“一脚着”的概率:22%,23.1%,24.3%,25.7%,27.3%,29%
playerNum <- c(4:9)
blockNum <- 0
probTurnFlush <- (9 - blockNum) / (52 - playerNum*2 - 3)
PTF <- round(probTurnFlush,3)
## print(PTF)
library(ggplot2)
data <- data.frame(
  category = playerNum,
  value = PTF,
  x = playerNum,
  y = PTF,
  family = PTF
)
ggplot(data, aes(x =playerNum, y = value)) +
  geom_point(stat = "identity") +
  geom_text(aes(label = (paste0(PTF*100,"%"))),nudge_y = 0.05,size = 3,check_overlap = FALSE)+
  coord_cartesian(ylim = c(0, 1)) +
  scale_y_continuous(labels = scales::percent) +
  labs(y = "PTF") +
  labs(title = paste("Hit flush on turn"),subtitle = "by aft_null")在4-9人局中,Suited在翻牌圈形成同花听牌后,在turn或river击中同花Flush的概率:39.51%,41.3%,43.24%,45.38%,47.73%,50.32%
playerNum <- c(4:9)
blockNum <- 0 ## 对手手握阻挡牌总数 ##
probTRF <- 1 - choose(52-playerNum*2-3-9+blockNum,2)/choose(52-playerNum*2-3,2)
PTRF <- round(probTRF,4)
## print(PTRF)
library(ggplot2)
data <- data.frame(
  category = playerNum,
  value = PTRF,
  x = playerNum,
  y = PTRF,
  family = PTRF
)
ggplot(data, aes(x =playerNum, y = value)) +
  geom_point(stat = "identity") +
  geom_text(aes(label = (paste0(PTRF*100,"%"))),nudge_y = 0.05,size = 3)+
  coord_cartesian(ylim = c(0, 1)) +
  scale_y_continuous(labels = scales::percent) +
  labs(y = "PTRF") +
  labs(title = paste("Hit flush on turn or river"),subtitle = "by aft_null")Suited手牌,于preflop ALL IN,在river击中Flush的概率:8.42%
choose(11,3)*choose(47,2)/choose(50,5)## [1] 0.08418367Suited 连张手牌,在flop至少击中一对、或者Straight听牌、以及Flush听牌的概率:34.85%
choose(23,2)*27/choose(50,3) ## 6张同点数补牌+8张顺子听牌补牌+11张同花色补牌-2张共同补牌,其余27张是无关牌## [1] 0.3485204任意两张手牌在flop击中Quads的概率:0.024%
## 白皮书 P26 E.2.4.15 b) ##
## 13种四条 + 另外48种单张牌*(翻牌的第三张牌)##
13*48/choose(52,5)  ## 等价于随机选择5张牌,其中4张牌的点数相同的概率 #### [1] 0.000240096已经拿到特定口袋对子,翻牌圈击中金刚的概率:0.24%
1*48/choose(50,3) ## [1] 0.00244898已经拿到特定口袋对子,假设无论如何都要看到河牌,击中金刚的概率:0.8%
1*choose(48,3)/choose(50,5)  ## 5张公牌,有两张与口袋对子同点数凑成金刚,其余3张任意组合 #### [1] 0.008163265