-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsim.R
More file actions
100 lines (83 loc) · 2.13 KB
/
Copy pathsim.R
File metadata and controls
100 lines (83 loc) · 2.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#################
# Deck Creation #
#################
val<-c("A","K","Q","J","10","9","8","7","6","5","4","3","2")
value<-c(val,val,val,val)
spades<-rep("s",13)
clubs<-rep("c",13)
diamonds<-rep("d",13)
hearts<-rep("h",13)
suit<-c(spades,clubs,diamonds,hearts)
deck<-paste(value,suit,sep = "")
hand<-function(players=2, player1,flop,turn,river){
############
# pre flop #
############
player<-matrix(NA,nrow=players,ncol=2)
if(missing(player1)){
for(i in 1:2){
for(j in 1:players){
player[j,i]<-sample(deck,size = 1, replace = FALSE)
deck<-deck[-which(deck%in%player)]
}
}
}
else{
deck<-deck[-which(deck%in%player1)]
player<-matrix(NA,nrow=players,ncol=2)
player[1,]<-player1
for(i in 1:2){
for(j in 2:players){
player[j,i]<-sample(deck,size = 1, replace = FALSE)
deck<-deck[-which(deck%in%player)]
}
}
}
if(missing(flop)){
########
# flop #
########
burn<-sample(deck, size=3, replace = FALSE)
deck<-deck[-which(deck%in%burn)]
board<-sample(deck,size=3,replace=FALSE)
deck<-deck[-which(deck%in%board)]
}
else{
board<-flop
deck<-deck[-which(deck%in%flop)]
burn<-sample(deck,size=3,replace=FALSE)
deck<-deck[-which(deck%in%burn)]
}
if(missing(turn)){
########
# turn #
########
burn.turn<-sample(deck,size = 1,replace = FALSE)
deck<-deck[-which(deck%in%burn.turn)]
board[4]<-sample(deck,size = 1,replace = FALSE)
deck<-deck[-which(deck%in%board)]
}
else{
board[4]<-turn
deck<-deck[-which(deck%in%turn)]
burn.turn<-sample(deck,size=1,replace=FALSE)
deck<-deck[-which(deck%in%burn.turn)]
}
if(missing(river)){
#########
# river #
#########
burn.river<-sample(deck,size = 1,replace=FALSE)
deck<-deck[-which(deck%in%burn.river)]
board[5]<-sample(deck,size = 1,replace = FALSE)
deck<-deck[-which(deck%in%board)]
}
else{
board[5]<-river
deck<-deck[-which(deck%in%river)]
burn.river<-sample(deck,size=1,replace=FALSE)
deck<-deck[-which(deck%in%burn.river)]
}
x<-list(player,board)
return(x)
}