ejwillemse / app_vukwm_bag_delivery

1 stars 0 forks source link

error with data uploading #46

Closed ejwillemse closed 1 year ago

ejwillemse commented 1 year ago
File "/home/appuser/venv/lib/python3.10/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 564, in _run_script
    exec(code, module.__dict__)
File "/app/app_vukwm_bag_delivery/Home.py", line 101, in <module>
    load_input_data.load_data()
File "/app/app_vukwm_bag_delivery/app_vukwm_bag_delivery/home/presenters/load_input_data.py", line 41, in load_data
    return_time_window_info()
File "/app/app_vukwm_bag_delivery/app_vukwm_bag_delivery/review_jobs_data/presenters/inspect_timewindows.py", line 162, in return_time_window_info
    unassigned_stops_tw = unassigned_stops_tw.sort_values(
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/util/_decorators.py", line 331, in wrapper
    return func(*args, **kwargs)
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/frame.py", line 6902, in sort_values
    indexer = lexsort_indexer(
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/sorting.py", line 340, in lexsort_indexer
    keys = [ensure_key_mapped(k, key) for k in keys]
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/sorting.py", line 340, in <listcomp>
    keys = [ensure_key_mapped(k, key) for k in keys]
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/sorting.py", line 566, in ensure_key_mapped
    result = key(values.copy())
File "/app/app_vukwm_bag_delivery/app_vukwm_bag_delivery/review_jobs_data/presenters/inspect_timewindows.py", line 163, in <lambda>
    ["Notes", "Site Name"], key=lambda col: col.str.lower()
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/generic.py", line 5902, in __getattr__
    return object.__getattribute__(self, name)
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/accessor.py", line 182, in __get__
    accessor_obj = self._accessor(obj)
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/strings/accessor.py", line 181, in __init__
    self._inferred_dtype = self._validate(data)
File "/home/appuser/venv/lib/python3.10/site-packages/pandas/core/strings/accessor.py", line 235, in _validate
    raise AttributeError("Can only use .str accessor with string values!")
ejwillemse commented 1 year ago

Error is here:

    unassigned_stops_tw = unassigned_stops_tw.sort_values(
        ["Notes", "Site Name"], key=lambda col: col.str.lower()
    )[INSPECT_ORDER]

if Notes is completely empty, i.e. NA.

Solution is:

    unassigned_stops_tw = unassigned_stops_tw.sort_values(
        ["Notes", "Site Name"], key=lambda col: col.fillna("").str.lower()
    )[INSPECT_ORDER]