Cross-sectional percentile rank per row (axis=1, ties=average, pct=True). NaN inputs stay NaN. An all-NaN row returns an all-NaN row.
(df: pd.DataFrame)
| 56 | |
| 57 | |
| 58 | def rank(df: pd.DataFrame) -> pd.DataFrame: |
| 59 | """Cross-sectional percentile rank per row (axis=1, ties=average, pct=True). |
| 60 | |
| 61 | NaN inputs stay NaN. An all-NaN row returns an all-NaN row. |
| 62 | """ |
| 63 | return df.rank(axis=1, method="average", pct=True, na_option="keep") |
| 64 | |
| 65 | |
| 66 | def scale(df: pd.DataFrame, a: float = 1.0) -> pd.DataFrame: |
no outgoing calls