Bon aller, Bon, allez, c'est reparti : le package `cellspace` permet, avec le spécificateur de colonne `S`, d'insérer si c'est nécessaire une espace en haut et en bas d'une cellule pour justement que le contenu ne touche pas les filets horizontaux. Le déclenchement de l'insertion de l’espace dépend des paramètres `\celltoplimit` et `\cellbottomlimit` qui représentent l'espace minimale demandée en haut ou en bas de la cellule.
Ce spécificateur `S` fonctionne un peu comme une macro et admet un argument qui est le spécificateur de la colonne. On peut donc écrire `Sc` pour une colonne centrée ou `S{m{<longueur>}}` pour une colonne de type `m{<longueur>}`.
\documentclass{article}
\usepackage{cellspace}
\newcolumntype{C}{>{$\displaystyle}Sc<$}
\cellspacetoplimit=3pt
\cellspacebottomlimit=3pt
\begin{document}
\begin{center}
\begin{tabular}{|l|*{3}{C|}}\hline
$g_i$&-3&2&5\\\hline
$p_i=P\left(G=g_i\right)$&\frac12&\frac13&\frac16\\\hline
\end{tabular}
\end{center}
\end{document}