rgwfuncs 0.0.12__py3-none-any.whl → 0.0.14__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.
rgwfuncs/df_lib.py CHANGED
@@ -61,6 +61,7 @@ def docs(method_type_filter: Optional[str] = None) -> None:
61
61
  # Print the entire docstring for the matching function
62
62
  print(f"\n{name}:\n{docstring}")
63
63
 
64
+
64
65
  def numeric_clean(df: pd.DataFrame, column_names: str, column_type: str, irregular_value_treatment: str) -> pd.DataFrame:
65
66
  """
66
67
  Cleans the numeric columns based on specified treatments.
@@ -1613,7 +1614,6 @@ def mask_against_dataframe_converse(df: pd.DataFrame, other_df: pd.DataFrame, co
1613
1614
 
1614
1615
  return df[~df[column_name].isin(other_df[column_name])]
1615
1616
 
1616
-
1617
1617
  def union_join(df1: pd.DataFrame, df2: pd.DataFrame) -> pd.DataFrame:
1618
1618
  """
1619
1619
  Perform a union join, concatenating the two DataFrames and dropping duplicates.
@@ -1632,19 +1632,19 @@ def union_join(df1: pd.DataFrame, df2: pd.DataFrame) -> pd.DataFrame:
1632
1632
  print("Initial df1 columns:", df1.columns)
1633
1633
  print("Initial df2 columns:", df2.columns)
1634
1634
 
1635
- # Standardize columns by adding missing columns filled with NaN
1635
+ # Standardize columns by adding missing columns filled with empty strings
1636
1636
  for col in df2.columns:
1637
1637
  if col not in df1:
1638
- df1[col] = pd.NA
1638
+ df1[col] = ""
1639
1639
 
1640
1640
  for col in df1.columns:
1641
1641
  if col not in df2:
1642
- df2[col] = pd.NA
1642
+ df2[col] = ""
1643
1643
 
1644
1644
  print("Standardized df1 columns:", df1.columns)
1645
1645
  print("Standardized df2 columns:", df2.columns)
1646
1646
 
1647
- # Check if columns match now
1647
+ # Ensure they have the same columns after standardizing
1648
1648
  if set(df1.columns) != set(df2.columns):
1649
1649
  raise ValueError("Both DataFrames must have the same columns after standardizing columns")
1650
1650
 
@@ -1670,14 +1670,14 @@ def bag_union_join(df1: pd.DataFrame, df2: pd.DataFrame) -> pd.DataFrame:
1670
1670
  print("Initial df1 columns:", df1.columns)
1671
1671
  print("Initial df2 columns:", df2.columns)
1672
1672
 
1673
- # Standardize columns by adding missing columns filled with NaN
1673
+ # Standardize columns by adding missing columns filled with empty strings
1674
1674
  for col in df2.columns:
1675
1675
  if col not in df1:
1676
- df1[col] = pd.NA
1676
+ df1[col] = ""
1677
1677
 
1678
1678
  for col in df1.columns:
1679
1679
  if col not in df2:
1680
- df2[col] = pd.NA
1680
+ df2[col] = ""
1681
1681
 
1682
1682
  print("Standardized df1 columns:", df1.columns)
1683
1683
  print("Standardized df2 columns:", df2.columns)
@@ -1722,6 +1722,7 @@ def right_join(df1: pd.DataFrame, df2: pd.DataFrame, left_on: str, right_on: str
1722
1722
  """
1723
1723
  return df1.merge(df2, how='right', left_on=left_on, right_on=right_on)
1724
1724
 
1725
+
1725
1726
  def sync_dataframe_to_sqlite_database(db_path: str, tablename: str, df: pd.DataFrame) -> None:
1726
1727
  """
1727
1728
  Processes and saves a DataFrame to an SQLite database, adding a timestamp column
@@ -1776,5 +1777,3 @@ def sync_dataframe_to_sqlite_database(db_path: str, tablename: str, df: pd.DataF
1776
1777
  conn.execute(f"DROP TABLE IF EXISTS {tablename}")
1777
1778
  # Rename the new table to the old table name
1778
1779
  conn.execute(f"ALTER TABLE {new_table_name} RENAME TO {tablename}")
1779
-
1780
-
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rgwfuncs
3
- Version: 0.0.12
3
+ Version: 0.0.14
4
4
  Summary: A functional programming paradigm for mathematical modelling and data science
5
5
  Home-page: https://github.com/ryangerardwilson/rgwfunc
6
6
  Author: Ryan Gerard Wilson
@@ -0,0 +1,8 @@
1
+ rgwfuncs/__init__.py,sha256=BP8Nh8ivyCCz8Ga-21JW3NWInJFOElKoIfRuioJRWbA,1076
2
+ rgwfuncs/df_lib.py,sha256=GlFATJvcvLxQK-twfmcBIMJk_1-cq4HCuiODqyoZN78,64094
3
+ rgwfuncs-0.0.14.dist-info/LICENSE,sha256=7EI8xVBu6h_7_JlVw-yPhhOZlpY9hP8wal7kHtqKT_E,1074
4
+ rgwfuncs-0.0.14.dist-info/METADATA,sha256=QSQo_msYCNSoln73NBfxfgvudh4LmTwVwzvM2JHc114,32059
5
+ rgwfuncs-0.0.14.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
6
+ rgwfuncs-0.0.14.dist-info/entry_points.txt,sha256=j-c5IOPIQ0252EaOV6j6STio56sbXl2C4ym_fQ0lXx0,43
7
+ rgwfuncs-0.0.14.dist-info/top_level.txt,sha256=aGuVIzWsKiV1f2gCb6mynx0zx5ma0B1EwPGFKVEMTi4,9
8
+ rgwfuncs-0.0.14.dist-info/RECORD,,
@@ -1,8 +0,0 @@
1
- rgwfuncs/__init__.py,sha256=BP8Nh8ivyCCz8Ga-21JW3NWInJFOElKoIfRuioJRWbA,1076
2
- rgwfuncs/df_lib.py,sha256=mIOEvnqpkkHW2Az23_09Xt61nltTtG6uNW0b81aW5Mg,64060
3
- rgwfuncs-0.0.12.dist-info/LICENSE,sha256=7EI8xVBu6h_7_JlVw-yPhhOZlpY9hP8wal7kHtqKT_E,1074
4
- rgwfuncs-0.0.12.dist-info/METADATA,sha256=rgeOUbLIXmgb-JuqmAcdF2G2vBS7iWCdsop74rfuTfc,32059
5
- rgwfuncs-0.0.12.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
6
- rgwfuncs-0.0.12.dist-info/entry_points.txt,sha256=j-c5IOPIQ0252EaOV6j6STio56sbXl2C4ym_fQ0lXx0,43
7
- rgwfuncs-0.0.12.dist-info/top_level.txt,sha256=aGuVIzWsKiV1f2gCb6mynx0zx5ma0B1EwPGFKVEMTi4,9
8
- rgwfuncs-0.0.12.dist-info/RECORD,,