Il y avait un \thead sans sa barre oblique `\`, x ce qui a mis le bazar dans l'interprétation des accolades par le compilateur.
Le code suivant fonctionne. Notez d'autre part qu'il vaut mieux noter les unités à l'aide de `siunitx`, qui assure que les unités sont bien en caractères romains (en particulier le mu de `micro` n'est pas la lettre grecque mu des formules de maths: ce grec est tout à fait romain, si vous me permettez…). Aussi les formules chimiques sont en romain, c'est pour cela que j'ai chargé l'extension `mhchem`, dont la commande `\ce` interprète toute seule, par exemple, la formule H2SO4 et se charge elle-même de mettre les chiffres en indice.
\documentclass{article}
\usepackage[hmargin=2.2cm]{geometry}
%\usepackage{babel}[french]
\usepackage{ragged2e, siunitx, makecell, mhchem}
\usepackage{booktabs}
\usepackage{tabularx}
\renewcommand{\theadfont}{\normalsize}
\begin{document}
\begin{figure}
\centering
\sisetup{table-number-alignment=center, copy-decimal-marker, per-mode=reciprocal}
% table-number_alignment=center dit que le nombre doit être centré dans sa colonne.
% table-format = 2.1 dit que les nombres sont écriture classique (pas en notation scientifique), avec 2 chiffres avant la virgule, 1 chiffre après
\begin{tabularx}{\linewidth}
% Première colonne : échantillon
{c
% Deuxième colonne : masse de F127a 2.1
S[table-format= 2.1]
% Troisième colonne : quantité de matière de F127a 1.3
S[table-format=1.3]
% Quatrième colonne : volume de HCl versé 3.0
S[table-format=3]
% Cinquième colonne : vitesse de dosage 2.0
S[table-format=2]
% Sixième colonne : vitesse de remplissage 2.0
S[table-format=2]
% Septième colonne : volume à la première équivalence 1.3
S[table-format=1.3]
% Huitième colonne : volume à la deuxième équivalence
S[table-format=1.3]
% Neuvième colonne : la différence entre les deux volumes
S[table-format=3]
% Dixième colonne : taux de fonctionnalisation
S[table-format=1.1]}
\toprule
% Première colonne : numéro de l'échantillon
{\thead{ech.}}
% Deuxième colonne : masse de F127a 2.1
& {\thead{m(F127a) \\(\si{\mg})}}
% Troisième colonne : quantité de matière de F127a 1.3
& {\thead{n(F127a) \\ (\si{\umol})}}
% Quatrième colonne : volume de HCl versé 3.0
&{\thead{ vol. de \ce{HCl}\\ (\si{\uL})}}
% Cinquième colonne : vitesse de dosage 2.0
&{\thead{ vitesse de \\ dosage \\ (\si{\uL\per\minute})}}
% Sixième colonne : vitesse de remplissage 2.0
&{\thead{ vitesse de \\ remplissage \\ (s)}}
% Septième colonne : volume à la première équivalence
& {\thead{$V_\text{eq1}$\\ (\si{\mL})}}
% Huitième colonne : volume à la deuxième équivalence
& {\thead{$V_\text{eq2}$ \\ (\si{\mL})}}
% Neuvième colonne : la différence entre les deux volumes
& {\thead{$\Delta V$ \\ (\si{\mL})}}
% Dixième colonne : taux de fonctionnalisation
& {\thead{f}}\\
\midrule
F127a3 & 14,6 & 1,218 &600 & 10 & 60 & 1,099 &1,544 & 446 &1,8 \\
\bottomrule
\end{tabularx}
\end{figure}
\end{document}
![alt text][1]
[1]: https://texnique.fr/osqa/upfiles/espacementdanstableau-new.png