diff --git a/libcodonusage/__init__.py b/libcodonusage/__init__.py
index 8621fcff1e088d661396831549b48b3524c9655f..81a2d1f8cac8eb9d1d2e7527a3bc63151c620ea4 100644
--- a/libcodonusage/__init__.py
+++ b/libcodonusage/__init__.py
@@ -1,6 +1,6 @@
 __copyright__ = "Copyright (C) 2022-2023 Blaise Li, Marie Anselmet"
 __licence__ = "GNU GPLv3"
-__version__ = "0.28.3"
+__version__ = "0.28.4"
 from .libcodonusage import (
     aa2colour,
     aa_usage,
diff --git a/libcodonusage/libcodonusage.py b/libcodonusage/libcodonusage.py
index 95ff3181a21c1ee5cc9f4d42464c909a0d9978d7..a1d4894b140d2b0f10187d7ee3109cf6b05e5beb 100644
--- a/libcodonusage/libcodonusage.py
+++ b/libcodonusage/libcodonusage.py
@@ -552,7 +552,7 @@ def group_codons_by_class(
     # getattr accesses the method whose name is in argument *mode*
     # and this method is called to get the result of the groupby operation.
     codon_counts_grouped = getattr(
-        codon_counts_pre_group.groupby(level=["aa", "codon"]),
+        codon_counts_pre_group.groupby(level=["aa", "codon"], axis=1),
         mode)()
     if keep_only_groups:
         return codon_counts_grouped