Comments (2)
Note that I commented out the line:
createdOn=lambda df_: to_tz(df_, 'str_date', 'tz', 'US/Eastern'),
And re-ran the code and got this error:
/home/matt/envs/menv/lib/python3.8/site-packages/IPython/core/interactiveshell.py:3418: DtypeWarning: Columns (68,70,71,72,73,74,76,79) have mixed types.Specify dtype option on import or set low_memory=False.
exec(code_obj, self.user_global_ns, self.user_ns)
1) fillna(value: 'object | ArrayLike | None' ="20", method: 'FillnaOptions | None' = None, axis: 'Axis | None' = None, inplace: 'bool' = False, limit=None, downcast=None):
Metadata:
* Filled 837 with 20.
Execution Stats:
* Execution time: Step Took 0.001567 seconds.
1) replace(to_replace="EDT", value="EST5EDT", inplace: 'bool' = False, limit=None, regex: 'bool' = False, method: 'str' = 'pad'):
Execution Stats:
* Execution time: Step Took 0.003579 seconds.
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-4-376a7e1a7d6b> in <module>
33 import pandas_log
34 with pandas_log.enable():
---> 35 tweak_autos(autos)
<ipython-input-4-376a7e1a7d6b> in tweak_autos(autos)
14 cols = ['city08', 'comb08', 'highway08', 'cylinders', 'displ', 'drive', 'eng_dscr',
15 'fuelCost08', 'make', 'model', 'trany', 'range', 'createdOn', 'year']
---> 16 return (autos
17 [cols]
18 .assign(cylinders=autos.cylinders.fillna(0).astype('int8'),
~/envs/menv/lib/python3.8/site-packages/pandas_flavor/register.py in __call__(self, *args, **kwargs)
27 @wraps(method)
28 def __call__(self, *args, **kwargs):
---> 29 return method(self._obj, *args, **kwargs)
30
31 register_dataframe_accessor(method.__name__)(AccessorMethod)
~/envs/menv/lib/python3.8/site-packages/pandas_log/pandas_log.py in wrapped(*args, **fn_kwargs)
184
185 input_df, fn_args = args[0], args[1:]
--> 186 output_df = _run_method_and_calc_stats(
187 fn,
188 fn_args,
~/envs/menv/lib/python3.8/site-packages/pandas_log/pandas_log.py in _run_method_and_calc_stats(fn, fn_args, fn_kwargs, input_df, full_signature, silent, verbose, copy_ok, calculate_memory)
168 output_df,
169 )
--> 170 step_stats.log_stats_if_needed(silent, verbose, copy_ok)
171 if isinstance(output_df, pd.DataFrame) or isinstance(output_df, pd.Series):
172 step_stats.persist_execution_stats()
~/envs/menv/lib/python3.8/site-packages/pandas_log/pandas_execution_stats.py in log_stats_if_needed(self, silent, verbose, copy_ok)
106
107 if verbose or self.fn.__name__ not in DATAFRAME_ADDITIONAL_METHODS_TO_OVERIDE:
--> 108 s = self.__repr__(verbose, copy_ok)
109 if s:
110 # If this method isn't patched and verbose is False, __repr__ will give an empty string, which
~/envs/menv/lib/python3.8/site-packages/pandas_log/pandas_execution_stats.py in __repr__(self, verbose, copy_ok)
147
148 # Step Metadata stats
--> 149 logs, tips = self.get_logs_for_specifc_method(verbose, copy_ok)
150 metadata_stats = f"\033[4mMetadata\033[0m:\n{logs}" if logs else ""
151 metadata_tips = f"\033[4mTips\033[0m:\n{tips}" if tips else ""
~/envs/menv/lib/python3.8/site-packages/pandas_log/pandas_execution_stats.py in get_logs_for_specifc_method(self, verbose, copy_ok)
128
129 log_method = partial(log_method, self.output_df, self.input_df)
--> 130 logs, tips = log_method(*self.fn_args, **self.fn_kwargs)
131 return logs, tips
132
~/envs/menv/lib/python3.8/site-packages/pandas_log/patched_logs_functions.py in log_assign(output_df, input_df, **kwargs)
250 # If copying is ok, we can check how many values actually changed
251 for col in changed_cols:
--> 252 values_changed, values_unchanged = num_values_changed(
253 input_df[col], output_df[col]
254 )
~/envs/menv/lib/python3.8/site-packages/pandas_log/patched_logs_functions.py in num_values_changed(input_obj, output_obj)
127 isinstance(input_obj, pd.Series)
128 and isinstance(output_obj, pd.Series)
--> 129 and input_obj.dtype != output_obj.dtype
130 ):
131 # Comparing values for equality across dtypes wouldn't be well-defined so we just say they all changed
TypeError: Cannot interpret 'CategoricalDtype(categories=['2-Wheel Drive', '4-Wheel Drive',
'4-Wheel or All-Wheel Drive', 'All-Wheel Drive',
'Front-Wheel Drive', 'Other', 'Part-time 4-Wheel Drive',
'Rear-Wheel Drive'],
, ordered=False)' as a data type
from pandas-log.
Also note that these failures were not handled correctly by the context manager, and if I try to run tweak_autos
normally, it tries to use pandas-log and fails. Maybe this warrants its own bug.
from pandas-log.
Related Issues (14)
- Accessable medium post HOT 1
- All logs should be suppressed after disable being called HOT 1
- Pandas regression test
- Add CI/CD
- fix link to open new issue HOT 2
- Adding memory footprint of each operation HOT 1
- Ease up finding bottlenecks
- Add tips/watch out section
- Allow pretty html output
- Integrate with Python logging module HOT 1
- pd.merge nonetype object has no attribute 'memory_usage' HOT 1
- No module humanize or pandas-flavor HOT 3
- A way to enable globally? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pandas-log.