|
1 | | -# Percentify |
| 1 | + |
| 2 | +<h1 align="center"> |
| 3 | + <img src="assets/favicon.png" alt="Percentify logo" height="40"> |
| 4 | + Percentify |
| 5 | +</h1> |
2 | 6 |
|
3 | 7 | [](https://pepy.tech/project/percentify) |
4 | 8 | [](https://pypi.org/project/percentify/) |
|
7 | 11 | [](https://data-centt.github.io/percentify/) |
8 | 12 | [](https://github.com/data-centt/percentify/actions/workflows/python-app.yml) |
9 | 13 |
|
10 | | -**Percentify is a niche data science library for practitioners and learners alike, drawing its main dependencies from pandas and numpy, and including everyday statistics.** |
| 14 | +**Percentify is a data science library that turns the 20% of data science operations behind 80% of daily work into single, readable function calls.** |
| 15 | + |
11 | 16 |
|
12 | | -Following the **Pareto principle**, Percentify brings the 20% of operations that make up 80% of daily data work to the forefront, each as a single, readable function call. It not built to compete with pandas, scipy, statsmodels, or scikit-learn; it stands on their shoulders and works alongside them, naming the library each function draws from so you always know where to dig deeper. |
| 17 | +Built on pandas and numpy, it pairs everyday hard to reach tools with lesser-known ones. Where a function wraps an existing library (pandas, scipy, statsmodels, scikit-learn), it names it, so you always know where to dig deeper. |
13 | 18 |
|
14 | 19 | ## 📖 Documentation |
15 | 20 |
|
@@ -63,22 +68,21 @@ One import, one line. A clean, sorted DataFrame you can read or feed into the ne |
63 | 68 |
|
64 | 69 | ## 🛟 Friendly by design |
65 | 70 |
|
66 | | -- **No cryptic tracebacks.** Hand a function a text column where numbers are needed and you get a clear `PercentifyWarning`, not an Arrow/NumPy stack trace. |
67 | | -- **Sensible defaults.** Results come back sorted worst-first, and PCA is standardized out of the box. |
68 | | -- **DataFrames everywhere**, so the output drops straight into your notebook, your next filter, or your model. |
| 71 | +- **No cryptic tracebacks**; Hand a function a text column where numbers are needed and you get a clear PercentifyWarning, not an Arrow/NumPy stack trace. |
| 72 | +- **Sensible defaults**; Results come back sorted worst-first, and PCA is standardized out of the box. |
| 73 | +- **DataFrames everywhere**; so the output drops straight into your notebook, your next filter, or your model. |
| 74 | + |
69 | 75 |
|
70 | 76 | ## 🤝 Contributing |
71 | 77 |
|
72 | 78 | Contributions are welcome but they must follow the repo's guiding principle: |
73 | | - |
74 | | -> **Keep each method as direct-to-output as possible.** A percentify function should return the single most common answer in one line, and point users to the underlying library (pandas, scipy, statsmodels, scikit-learn) for the full, configurable version when the simplest output isn't what they're after. |
| 79 | +> Keep each method as direct-to-output as possible. A percentify function should return the single most common answer in one line, and point users to the underlying library (pandas, scipy, statsmodels, scikit-learn) for the full, configurable version when the simplest output isn't what they're after. |
75 | 80 |
|
76 | 81 | If your idea keeps things that simple and direct: |
77 | | - |
78 | 82 | - Open an issue first to discuss it |
79 | 83 | - Fork the repo |
80 | 84 | - Create a branch |
81 | 85 | - Commit your changes |
82 | 86 | - Open a pull request |
83 | 87 |
|
84 | | -Anything that adds knobs and options for their own sake, or duplicates what the parent libraries already do well, is out of scope, those cases should point to the source library instead. |
| 88 | +> Anything that adds knobs and options for their own sake, or duplicates what the parent libraries already do well, is out of scope; those cases should point to the source library instead. |
0 commit comments