sweatstack 0.22.0__py3-none-any.whl → 0.22.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sweatstack/client.py +21 -1
- {sweatstack-0.22.0.dist-info → sweatstack-0.22.1.dist-info}/METADATA +1 -1
- {sweatstack-0.22.0.dist-info → sweatstack-0.22.1.dist-info}/RECORD +5 -5
- {sweatstack-0.22.0.dist-info → sweatstack-0.22.1.dist-info}/WHEEL +0 -0
- {sweatstack-0.22.0.dist-info → sweatstack-0.22.1.dist-info}/entry_points.txt +0 -0
sweatstack/client.py
CHANGED
|
@@ -540,11 +540,31 @@ class Client(OAuth2Mixin, DelegationMixin):
|
|
|
540
540
|
params["limit"] = min(default_limit, limit - num_returned)
|
|
541
541
|
params["offset"] += default_limit
|
|
542
542
|
|
|
543
|
+
def _prepare_unserialized_data(self, df: pd.DataFrame, column: str) -> pd.DataFrame:
|
|
544
|
+
"""
|
|
545
|
+
pd.json_normalize() only likes to play with lists of records (dicts?), not lists of lists.
|
|
546
|
+
So that's what we're feeding it.
|
|
547
|
+
"""
|
|
548
|
+
unserialized_data = df[column].tolist()
|
|
549
|
+
if column in ["laps", "traces"]:
|
|
550
|
+
result = []
|
|
551
|
+
for sublist in unserialized_data:
|
|
552
|
+
if sublist:
|
|
553
|
+
dict_from_sublist = {i: value for i, value in enumerate(sublist) if sublist}
|
|
554
|
+
else:
|
|
555
|
+
dict_from_sublist = {}
|
|
556
|
+
result.append(dict_from_sublist)
|
|
557
|
+
|
|
558
|
+
unserialized_data = result
|
|
559
|
+
|
|
560
|
+
return unserialized_data
|
|
561
|
+
|
|
543
562
|
def _normalize_dataframe_column(self, df: pd.DataFrame, column: str) -> pd.DataFrame:
|
|
544
563
|
normalized = pd.json_normalize(
|
|
545
|
-
df
|
|
564
|
+
self._prepare_unserialized_data(df, column),
|
|
546
565
|
)
|
|
547
566
|
normalized = normalized.add_prefix(f"{column}.")
|
|
567
|
+
normalized.index = df.index
|
|
548
568
|
if column == "activity":
|
|
549
569
|
normalized = normalized.drop(["activity.traces", "activity.laps"], axis=1, errors="ignore")
|
|
550
570
|
return pd.concat([df.drop(column, axis=1), normalized], axis=1)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
sweatstack/__init__.py,sha256=tiVfgKlswRPaDMEy0gA7u8rveqEYZTA_kyB9lJ3J6Sc,21
|
|
2
2
|
sweatstack/cli.py,sha256=N1NWOgEZR2yaJvIXxo9qvp_jFlypZYb0nujpbVNYQ6A,720
|
|
3
|
-
sweatstack/client.py,sha256=
|
|
3
|
+
sweatstack/client.py,sha256=09c9f-ij0Pe4MIoCQustskz8YGxpzUxpSeVoCI2deLk,23713
|
|
4
4
|
sweatstack/constants.py,sha256=fGO6ksOv5HeISv9lHRoYm4besW1GTveXS8YD3K0ljg0,41
|
|
5
5
|
sweatstack/ipython_init.py,sha256=zBGUlMFkdpLvsNpOpwrNaKRUpUZhzaICvH8ODJgMPcI,229
|
|
6
6
|
sweatstack/jupyterlab_oauth2_startup.py,sha256=eZ6xi0Sa4hO4vUanimq0SqjduHtiywCURSDNWk_I-7s,1200
|
|
@@ -11,7 +11,7 @@ sweatstack/streamlit.py,sha256=F5oQdWkcJ76Um5fRqFT5QrjpEz8v3OaiH9kMQOYktgo,4466
|
|
|
11
11
|
sweatstack/sweatshell.py,sha256=MYLNcWbOdceqKJ3S0Pe8dwHXEeYsGJNjQoYUXpMTftA,333
|
|
12
12
|
sweatstack/utils.py,sha256=HtR1NNCKus59vfgfaCSFS-tHA11mtdcuUx5lS6ZX58g,1773
|
|
13
13
|
sweatstack/Sweat Stack examples/Getting started.ipynb,sha256=k2hiSffWecoQ0VxjdpDcgFzBXDQiYEebhnAYlu8cgX8,6335204
|
|
14
|
-
sweatstack-0.22.
|
|
15
|
-
sweatstack-0.22.
|
|
16
|
-
sweatstack-0.22.
|
|
17
|
-
sweatstack-0.22.
|
|
14
|
+
sweatstack-0.22.1.dist-info/METADATA,sha256=hq8tYbkShOb5KqTObhqkuMa4UR8Afu7plg7fKnQPJbA,776
|
|
15
|
+
sweatstack-0.22.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
16
|
+
sweatstack-0.22.1.dist-info/entry_points.txt,sha256=kCzOUQI3dqbTpEYqtgYDeiKFaqaA7BMlV6D24BMzCFU,208
|
|
17
|
+
sweatstack-0.22.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|