No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Benjamin Bertrand e11787f3bc Core: prepare 2.1! 2 months ago
documentation Feat: Default render is txt 2 months ago
mapytex Fix: subtree render for tex 2 months ago
.gitignore Add venv to .gitignore 1 year ago
LICENSE Initial commit 4 years ago
README.md Doc: Add Statistical examples 2 months ago
pytest.ini pytest config 1 year ago
requirements.txt ci(python): Update requirements package version 10 months ago
setup.py Core: prepare 2.1! 2 months ago

README.md

Mapytex

Formal calculus with explanation python module and exercises creation tools.

French wiki

Installing

Install and update with pip

pip install -U mapytex

Examples

Simplify expressions and explain steps

>>> from mapytex import Expression
>>> ajout_fractions = Expression("2 / 5 + 2 / 3")
>>> resultat = ajout_fractions.simplify()
>>> print(resultat)
16 / 15 
>>> for s in resultat.explain():
...      print(s)
...
2 / 5  + 2 / 3 
2 * 3 / 5 * 3  + 2 * 5 / 3 * 5 
6 / 15  + 10 / 15 
( 6 + 10 ) / 15 
16 / 15 

Random expression generator

>>> from mapytex import Expression
>>> ajout_fraction = Expression.random("{a} + {b} / {c}")
>>> print(ajout_fraction)
2 + 3 / 5 

Render in latex

>>> from mapytex import Expression
>>> Expression.set_render("tex")
>>> ajout_fractions = Expression("2 / 5 + 2 / 3")
>>> for i in ajout_fractions.simpliy().explain():
...      print(i)
...
\frac{ 2 }{ 5 } + \frac{ 2 }{ 3 }
\frac{ 2 \times 3 }{ 5 \times 3 } + \frac{ 2 \times 5 }{ 3 \times 5 }
\frac{ 6 }{ 15 } + \frac{ 10 }{ 15 }
\frac{ 6 + 10 }{ 15 }
\frac{ 16 }{ 15 }

Statistical tools

>>> from mapytex import Dataset
>>> d = Dataset.random(10, "Poids des sacs (kg)", "gauss", (4, 1), v_min=1)
>>> print(d)
[3.03, 5.94, 4.46, 2.58, 5.32, 3.22, 5.75, 4.22, 1.81, 4.71]
>>> d.mean()
4.1
>>> d.effectif_total()
10
>>> d.sum()
41.04
>>> print(d.tabular_latex(2))
\begin{tabular}{|c|*{5}{c|}}
    \hline
    3.03 & 5.94 & 4.46 & 2.58 & 5.32 \\
    \hline
    3.22 & 5.75 & 4.22 & 1.81 & 4.71 \\
    \hline
\end{tabular}

>>> w = WeightedDataset([1, 2, 3, 4], "Enfants", [10, 11, 12, 13])
>>> print(w)
{1: 10, 2: 11, 3: 12, 4: 13}
>>> print(w.tabular_latex())
\begin{tabular}{|c|*{4}{c|}}
\hline
    Enfants & 1 & 2 & 3 & 4 \\
    \hline
    Effectifs & 10 & 11 & 12 & 13 \\
    \hline
\end{tabular}