From 557782c2e61d6021282a9c84225430023942f31e Mon Sep 17 00:00:00 2001 From: Ed Bennett Date: Thu, 23 Apr 2026 14:10:14 +0100 Subject: [PATCH] make use of amax and amin more consistent --- episodes/02-numpy.md | 12 +- .../fig/python-operations-across-axes.odg | Bin 16221 -> 0 bytes .../fig/python-operations-across-axes.png | Bin 48383 -> 0 bytes .../fig/python-operations-across-axes.svg | 394 ++++++++++++++++++ 4 files changed, 400 insertions(+), 6 deletions(-) delete mode 100644 episodes/fig/python-operations-across-axes.odg delete mode 100644 episodes/fig/python-operations-across-axes.png create mode 100644 episodes/fig/python-operations-across-axes.svg diff --git a/episodes/02-numpy.md b/episodes/02-numpy.md index f281834b79..13a1398e9c 100644 --- a/episodes/02-numpy.md +++ b/episodes/02-numpy.md @@ -420,14 +420,14 @@ next diagram on the left) or the average for each day (as in the diagram on the right)? As the diagram below shows, we want to perform the operation across an axis: -![](fig/python-operations-across-axes.png){alt="Per-patient maximum inflammation is computed row-wise across all columns usingnumpy.amax(data, axis=1). Per-day average inflammation is computed column-wise across all rows usingnumpy.mean(data, axis=0)."} +![](fig/python-operations-across-axes.svg){alt="Per-patient maximum inflammation is computed row-wise across all columns usingnumpy.amax(data, axis=1). Per-day average inflammation is computed column-wise across all rows usingnumpy.mean(data, axis=0)."} -To find the **maximum inflammation reported for each patient**, you would apply the `max` function moving across the columns (axis 1). To find the **daily average inflammation reported across patients**, you would apply the `mean` function moving down the rows (axis 0). +To find the **maximum inflammation reported for each patient**, you would apply the `amax` function moving across the columns (axis 1). To find the **daily average inflammation reported across patients**, you would apply the `mean` function moving down the rows (axis 0). -To support this functionality, most array functions allow us to specify the axis we want to work on. If we ask for the max across axis 1 (columns in our 2D example), we get: +To support this functionality, most array functions allow us to specify the axis we want to work on. If we ask for the maximum across axis 1 (columns in our 2D example), we get: ```python -print(numpy.max(data, axis=1)) +print(numpy.amax(data, axis=1)) ``` ```output @@ -437,10 +437,10 @@ print(numpy.max(data, axis=1)) 17. 16. 17. 19. 18. 18.] ``` -As a quick check, we can ask this array what its shape is. We expect 60 patient maximums: +As a quick check, we can ask this array what its shape is. We expect 60 patient maxima: ```python -print(numpy.max(data, axis=1).shape) +print(numpy.amax(data, axis=1).shape) ``` ```output diff --git a/episodes/fig/python-operations-across-axes.odg b/episodes/fig/python-operations-across-axes.odg deleted file mode 100644 index d4aed890767ab275c7b07d80bf10553b58f01778..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16221 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

(QHtGZ-zQVJ(x9*8n;X3e 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 S;Kn~GNs6*+GUZb5KK&1_?wF$h diff --git a/episodes/fig/python-operations-across-axes.svg b/episodes/fig/python-operations-across-axes.svg new file mode 100644 index 0000000000..a3aa30e237 --- /dev/null +++ b/episodes/fig/python-operations-across-axes.svg @@ -0,0 +1,394 @@ + + + +Day0Day1Day2PatientMaximumPatient 0Patient 1Patient 2Patient 3Maximum for each patientnumpy.amax(data, axis=1)Day0Day1Day2Patient 0Patient 1Patient 2Patient 3DailyAverageAverage for each daynumpy.mean(data, axis=0)