@@ -96,13 +96,14 @@ def plot(
96
96
if isinstance (df , pd .Series ):
97
97
df = df .to_frame (name = value_col [0 ])
98
98
99
- df = apply_range_clipping (
100
- df = df ,
101
- value_col = value_col ,
102
- range_lower = range_lower ,
103
- range_upper = range_upper ,
104
- range_method = range_method ,
105
- )
99
+ if range_lower is not None and range_upper is not None :
100
+ df = _apply_range_clipping (
101
+ df = df ,
102
+ value_col = value_col ,
103
+ range_lower = range_lower ,
104
+ range_upper = range_upper ,
105
+ range_method = range_method ,
106
+ )
106
107
107
108
num_histograms = _get_num_histograms (df = df , value_col = value_col , group_col = group_col )
108
109
@@ -159,28 +160,25 @@ def _prepare_value_col(df: pd.DataFrame | pd.Series, value_col: str | list[str]
159
160
return value_col
160
161
161
162
162
- def apply_range_clipping (
163
+ def _apply_range_clipping (
163
164
df : pd .DataFrame ,
164
165
value_col : list [str ],
165
- range_lower : float | None ,
166
- range_upper : float | None ,
166
+ range_lower : float ,
167
+ range_upper : float ,
167
168
range_method : Literal ["clip" , "fillna" ],
168
169
) -> pd .DataFrame :
169
170
"""Applies range clipping or filling based on the provided method and returns the modified dataframe.
170
171
171
172
Args:
172
173
df (pd.DataFrame): The dataframe to apply range clipping to.
173
174
value_col (list of str): The column(s) to apply clipping or filling to.
174
- range_lower (float, optional ): Lower bound for clipping or filling NA values.
175
- range_upper (float, optional ): Upper bound for clipping or filling NA values.
175
+ range_lower (float): Lower bound for clipping or filling NA values.
176
+ range_upper (float): Upper bound for clipping or filling NA values.
176
177
range_method (Literal, optional): Whether to "clip" values outside the range or "fillna". Defaults to "clip".
177
178
178
179
Returns:
179
180
pd.DataFrame: The modified dataframe with the clipping or filling applied.
180
181
"""
181
- if range_lower is None and range_upper is None :
182
- return df
183
-
184
182
if range_method == "clip" :
185
183
return df .assign (** {col : df [col ].clip (lower = range_lower , upper = range_upper ) for col in value_col })
186
184
0 commit comments