Skip to content

Commit a72f7a2

Browse files
check if pandas duplications error exists if we dont save outputs on notebooks
1 parent adea4f2 commit a72f7a2

File tree

2 files changed

+53
-580
lines changed

2 files changed

+53
-580
lines changed

doc/tutorials/01_quickstart.ipynb

Lines changed: 27 additions & 207 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
},
3939
{
4040
"cell_type": "code",
41-
"execution_count": 1,
41+
"execution_count": null,
4242
"id": "c58d382d",
4343
"metadata": {},
4444
"outputs": [],
@@ -50,21 +50,10 @@
5050
},
5151
{
5252
"cell_type": "code",
53-
"execution_count": 2,
53+
"execution_count": null,
5454
"id": "2060c1ed",
5555
"metadata": {},
56-
"outputs": [
57-
{
58-
"data": {
59-
"text/plain": [
60-
"pygambit.gambit.Game"
61-
]
62-
},
63-
"execution_count": 2,
64-
"metadata": {},
65-
"output_type": "execute_result"
66-
}
67-
],
56+
"outputs": [],
6857
"source": [
6958
"n_strategies = [2, 2]\n",
7059
"g = gbt.Game.new_table(n_strategies, title=\"Prisoner's Dilemma\")\n",
@@ -83,7 +72,7 @@
8372
},
8473
{
8574
"cell_type": "code",
86-
"execution_count": 3,
75+
"execution_count": null,
8776
"id": "9d8203e8",
8877
"metadata": {},
8978
"outputs": [],
@@ -111,7 +100,7 @@
111100
},
112101
{
113102
"cell_type": "code",
114-
"execution_count": 4,
103+
"execution_count": null,
115104
"id": "61030607",
116105
"metadata": {},
117106
"outputs": [],
@@ -135,25 +124,10 @@
135124
},
136125
{
137126
"cell_type": "code",
138-
"execution_count": 5,
127+
"execution_count": null,
139128
"id": "caecc334",
140129
"metadata": {},
141-
"outputs": [
142-
{
143-
"data": {
144-
"text/html": [
145-
"<center><h1>Prisoner's Dilemma</h1></center>\n",
146-
"<table><tr><td></td><td align=center><b>Cooperate</b></td><td align=center><b>Defect</b></td></tr><tr><td align=center><b>Cooperate</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>Defect</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table><table><tr><td></td><td align=center><b>Cooperate</b></td><td align=center><b>Defect</b></td></tr><tr><td align=center><b>Cooperate</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>Defect</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table><table><tr><td></td><td align=center><b>Cooperate</b></td><td align=center><b>Defect</b></td></tr><tr><td align=center><b>Cooperate</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>Defect</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table><table><tr><td></td><td align=center><b>Cooperate</b></td><td align=center><b>Defect</b></td></tr><tr><td align=center><b>Cooperate</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>Defect</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table>\n"
147-
],
148-
"text/plain": [
149-
"Game(title='Prisoner's Dilemma')"
150-
]
151-
},
152-
"execution_count": 5,
153-
"metadata": {},
154-
"output_type": "execute_result"
155-
}
156-
],
130+
"outputs": [],
157131
"source": [
158132
"# View the payout matrix\n",
159133
"g"
@@ -189,25 +163,10 @@
189163
},
190164
{
191165
"cell_type": "code",
192-
"execution_count": 6,
166+
"execution_count": null,
193167
"id": "843ba7f3",
194168
"metadata": {},
195-
"outputs": [
196-
{
197-
"data": {
198-
"text/html": [
199-
"<center><h1>Another Prisoner's Dilemma</h1></center>\n",
200-
"<table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>2</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table><table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>2</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table><table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>2</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table><table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>-1,-1</td><td align=center>-3,0</td></tr><tr><td align=center><b>2</b></td><td align=center>0,-3</td><td align=center>-2,-2</td></tr></table>\n"
201-
],
202-
"text/plain": [
203-
"Game(title='Another Prisoner's Dilemma')"
204-
]
205-
},
206-
"execution_count": 6,
207-
"metadata": {},
208-
"output_type": "execute_result"
209-
}
210-
],
169+
"outputs": [],
211170
"source": [
212171
"player1_payoffs = np.array([[-1, -3], [0, -2]])\n",
213172
"player2_payoffs = np.transpose(player1_payoffs)\n",
@@ -233,19 +192,10 @@
233192
},
234193
{
235194
"cell_type": "code",
236-
"execution_count": 7,
195+
"execution_count": null,
237196
"id": "5ee752c4",
238197
"metadata": {},
239-
"outputs": [
240-
{
241-
"name": "stdout",
242-
"output_type": "stream",
243-
"text": [
244-
"-1\n",
245-
"<class 'pygambit.gambit.Rational'>\n"
246-
]
247-
}
248-
],
198+
"outputs": [],
249199
"source": [
250200
"tom_payoffs, jerry_payoffs = g.to_arrays(\n",
251201
" # dtype=float\n",
@@ -270,21 +220,10 @@
270220
},
271221
{
272222
"cell_type": "code",
273-
"execution_count": 8,
223+
"execution_count": null,
274224
"id": "a81c06c7",
275225
"metadata": {},
276-
"outputs": [
277-
{
278-
"data": {
279-
"text/plain": [
280-
"pygambit.nash.NashComputationResult"
281-
]
282-
},
283-
"execution_count": 8,
284-
"metadata": {},
285-
"output_type": "execute_result"
286-
}
287-
],
226+
"outputs": [],
288227
"source": [
289228
"result = gbt.nash.enumpure_solve(g)\n",
290229
"type(result)"
@@ -300,21 +239,10 @@
300239
},
301240
{
302241
"cell_type": "code",
303-
"execution_count": 9,
242+
"execution_count": null,
304243
"id": "bd395180",
305244
"metadata": {},
306-
"outputs": [
307-
{
308-
"data": {
309-
"text/plain": [
310-
"1"
311-
]
312-
},
313-
"execution_count": 9,
314-
"metadata": {},
315-
"output_type": "execute_result"
316-
}
317-
],
245+
"outputs": [],
318246
"source": [
319247
"len(result.equilibria)"
320248
]
@@ -329,46 +257,21 @@
329257
},
330258
{
331259
"cell_type": "code",
332-
"execution_count": 10,
260+
"execution_count": null,
333261
"id": "76570ebc",
334262
"metadata": {},
335-
"outputs": [
336-
{
337-
"data": {
338-
"text/latex": [
339-
"$\\left[\\left[0,1\\right],\\left[0,1\\right]\\right]$"
340-
],
341-
"text/plain": [
342-
"[[Rational(0, 1), Rational(1, 1)], [Rational(0, 1), Rational(1, 1)]]"
343-
]
344-
},
345-
"execution_count": 10,
346-
"metadata": {},
347-
"output_type": "execute_result"
348-
}
349-
],
263+
"outputs": [],
350264
"source": [
351265
"msp = result.equilibria[0]\n",
352266
"msp"
353267
]
354268
},
355269
{
356270
"cell_type": "code",
357-
"execution_count": 11,
271+
"execution_count": null,
358272
"id": "6e8cfcde",
359273
"metadata": {},
360-
"outputs": [
361-
{
362-
"data": {
363-
"text/plain": [
364-
"pygambit.gambit.MixedStrategyProfileRational"
365-
]
366-
},
367-
"execution_count": 11,
368-
"metadata": {},
369-
"output_type": "execute_result"
370-
}
371-
],
274+
"outputs": [],
372275
"source": [
373276
"type(msp)"
374277
]
@@ -385,27 +288,10 @@
385288
},
386289
{
387290
"cell_type": "code",
388-
"execution_count": 12,
291+
"execution_count": null,
389292
"id": "980bf6b1",
390293
"metadata": {},
391-
"outputs": [
392-
{
393-
"name": "stdout",
394-
"output_type": "stream",
395-
"text": [
396-
"Tom plays the equilibrium strategy:\n",
397-
"Probability of cooperating: 0\n",
398-
"Probability of defecting: 1\n",
399-
"Payoff: -2\n",
400-
"\n",
401-
"Jerry plays the equilibrium strategy:\n",
402-
"Probability of cooperating: 0\n",
403-
"Probability of defecting: 1\n",
404-
"Payoff: -2\n",
405-
"\n"
406-
]
407-
}
408-
],
294+
"outputs": [],
409295
"source": [
410296
"for player in g.players:\n",
411297
" print(f\"{player.label} plays the equilibrium strategy:\")\n",
@@ -430,61 +316,10 @@
430316
},
431317
{
432318
"cell_type": "code",
433-
"execution_count": 13,
319+
"execution_count": null,
434320
"id": "e1b060fb-94cc-432d-a9cc-4ccae5908f79",
435321
"metadata": {},
436-
"outputs": [
437-
{
438-
"data": {
439-
"text/html": [
440-
"<div>\n",
441-
"<style scoped>\n",
442-
" .dataframe tbody tr th:only-of-type {\n",
443-
" vertical-align: middle;\n",
444-
" }\n",
445-
"\n",
446-
" .dataframe tbody tr th {\n",
447-
" vertical-align: top;\n",
448-
" }\n",
449-
"\n",
450-
" .dataframe thead th {\n",
451-
" text-align: right;\n",
452-
" }\n",
453-
"</style>\n",
454-
"<table border=\"1\" class=\"dataframe\">\n",
455-
" <thead>\n",
456-
" <tr style=\"text-align: right;\">\n",
457-
" <th></th>\n",
458-
" <th>Game</th>\n",
459-
" <th>Title</th>\n",
460-
" </tr>\n",
461-
" </thead>\n",
462-
" <tbody>\n",
463-
" <tr>\n",
464-
" <th>0</th>\n",
465-
" <td>2smp</td>\n",
466-
" <td>Two-stage matching pennies game</td>\n",
467-
" </tr>\n",
468-
" <tr>\n",
469-
" <th>1</th>\n",
470-
" <td>pd</td>\n",
471-
" <td>Two person Prisoner's Dilemma game</td>\n",
472-
" </tr>\n",
473-
" </tbody>\n",
474-
"</table>\n",
475-
"</div>"
476-
],
477-
"text/plain": [
478-
" Game Title\n",
479-
"0 2smp Two-stage matching pennies game\n",
480-
"1 pd Two person Prisoner's Dilemma game"
481-
]
482-
},
483-
"execution_count": 13,
484-
"metadata": {},
485-
"output_type": "execute_result"
486-
}
487-
],
322+
"outputs": [],
488323
"source": [
489324
"gbt.catalog.games()"
490325
]
@@ -499,25 +334,10 @@
499334
},
500335
{
501336
"cell_type": "code",
502-
"execution_count": 14,
337+
"execution_count": null,
503338
"id": "9ee2c3bd-22d1-4c8e-996c-cd9e0dfd64cc",
504339
"metadata": {},
505-
"outputs": [
506-
{
507-
"data": {
508-
"text/html": [
509-
"<center><h1>Two person Prisoner's Dilemma game</h1></center>\n",
510-
"<table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>9,9</td><td align=center>0,10</td></tr><tr><td align=center><b>2</b></td><td align=center>10,0</td><td align=center>1,1</td></tr></table><table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>9,9</td><td align=center>0,10</td></tr><tr><td align=center><b>2</b></td><td align=center>10,0</td><td align=center>1,1</td></tr></table><table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>9,9</td><td align=center>0,10</td></tr><tr><td align=center><b>2</b></td><td align=center>10,0</td><td align=center>1,1</td></tr></table><table><tr><td></td><td align=center><b>1</b></td><td align=center><b>2</b></td></tr><tr><td align=center><b>1</b></td><td align=center>9,9</td><td align=center>0,10</td></tr><tr><td align=center><b>2</b></td><td align=center>10,0</td><td align=center>1,1</td></tr></table>\n"
511-
],
512-
"text/plain": [
513-
"Game(title='Two person Prisoner's Dilemma game')"
514-
]
515-
},
516-
"execution_count": 14,
517-
"metadata": {},
518-
"output_type": "execute_result"
519-
}
520-
],
340+
"outputs": [],
521341
"source": [
522342
"g = gbt.catalog.load(\"pd\")\n",
523343
"g"
@@ -539,7 +359,7 @@
539359
},
540360
{
541361
"cell_type": "code",
542-
"execution_count": 15,
362+
"execution_count": null,
543363
"id": "f58eaa77",
544364
"metadata": {},
545365
"outputs": [],
@@ -557,7 +377,7 @@
557377
},
558378
{
559379
"cell_type": "code",
560-
"execution_count": 16,
380+
"execution_count": null,
561381
"id": "4119a2ac",
562382
"metadata": {},
563383
"outputs": [],

0 commit comments

Comments
 (0)