Skip to main content

DataRecipe

Table of Contents

  1. Overview
  2. Functions
  3. Contact Information

Overview

This toolkit provides a variety of Python functions to facilitate common data manipulation, data import/export, and database operations.

Functions

General Features

send_email

Sends an email using SMTP with SSL/TLS options, supporting attachments if provided.

  • Parameters:
    • subject: Email subject as a string.
    • body: Main content of the email.
    • send_email_address: Sender's email address.
    • send_email_password: Sender's email password for SMTP authentication.
    • receive_email_address: Recipient's email address.
    • attachment_path: Directory path where attachments are stored (optional).
    • attachment_list: List of filenames to be attached (optional).
    • smtp_address: SMTP server address (default: 'smtp.feishu.cn').
    • smtp_port: SMTP server port (default: 465).

Example with Attachments:

send_email(
    "Meeting Documents", 
    "Please see attached documents for the upcoming meeting.", 
    "sender@example.com", 
    "password123", 
    "receiver@example.com", 
    attachment_path="/path/to/documents", 
    attachment_list=["agenda.pdf", "minutes.docx"]
)

Data Validation and Cleaning

check_empty

Checks for empty entries in specified DataFrame columns.

  • Parameters:
    • df: DataFrame to check.
    • columns: Columns to check for missing values.
    • output_cols: Columns to include in the output.

Example:

empty_data = check_empty(df, columns=["name", "email"])

clean_dataframe

Cleans DataFrame by replacing infinite values with NaN.

  • Parameters:
    • df: DataFrame to clean.

Example:

clean_dataframe(df)

Data Import/Export

local_to_df

Converts files from a local directory to a pandas DataFrame.

  • Parameters:
    • path: Directory path to search for files.
    • partial_file_name: File name pattern to match.
    • skip_rows: Number of rows to skip at the start of each file.
    • keep_file_name: If True, adds a column with the file name.
    • sheet_num: For Excel files, specifies the sheet number to read.
    • encoding: Character encoding of the files.

Example with CSV files:

df = local_to_df("./data", "sample", keep_file_name=True)

Example with Excel files:

df = local_to_df("./data", "report", sheet_num=2, encoding='utf-8')

df_to_xlsx

Saves a DataFrame to an Excel file.

  • Parameters:
    • df: DataFrame to save.
    • directory_path: Path to directory where the file will be saved.
    • file_name: Name of the output file.

Example:

df_to_xlsx(df, "./output", "output_data")

df_to_csv

Saves a DataFrame to a CSV file.

  • Parameters:
    • df: DataFrame to save.
    • directory_path: Path to directory where the file will be saved.
    • file_name: Name of the output file.

Example:

df_to_csv(df, "./output", "output_data")

Database Operations

update

Updates records in a database table based on conditions.

  • Parameters:
    • raw_df: DataFrame containing new data to update.
    • database: Database name.
    • table: Table name.
    • yaml_file_name: YAML file name with DB configuration.
    • clause: SQL clause for record deletion.
    • date_col: Column name containing date data.
    • custom_path: Path to directory containing the YAML file.

Example:

update(df, "test_db", "user_data", clause="user_id > 10")

sql_query

Executes a SELECT SQL query and returns a DataFrame.

  • Parameters:
    • database: Database name.
    • sql: SQL SELECT statement.
    • yaml_file_name: YAML file name with DB configuration.
    • custom_path: Optional path to directory containing the YAML file.

Example:

result_df = sql_query("test_db", "SELECT * FROM users")

Contact Information

For any questions or suggestions regarding the toolkit, please contact us at:

Metadata

Release files for datarecipe 2.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for datarecipe 2.1.1
File Size Uploaded
datarecipe-2.1.1.tar.gz 13.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for datarecipe 2.1.1
File Interpreter ABI Platform
datarecipe-2.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 26.3 kB

Release files / datarecipe-2.1.1.tar.gz

Download URL datarecipe-2.1.1.tar.gz
Size 13.4 kB
Tags Source
SHA-256 checksum
How to use checksums
a854d21de54be64fd1562b7ad422ae9fb50471344d7745a3de6b20d071c5dd88
BLAKE2b-256 checksum
How to use checksums
17857217b6e159304611c41c496fb9d4142836ba108a3e12866f3c6443e5f014
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release files / datarecipe-2.1.1-py3-none-any.whl

Download URL datarecipe-2.1.1-py3-none-any.whl
Size 12.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cdb159379638b7116cfb2a91dc2aba7503552f3479b1fb44ddbfec31556be50b
BLAKE2b-256 checksum
How to use checksums
097c6c6a6a3b3b81e056c6b729bc8be0ec70e496f91f0ebc6db8c696130c50f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.7

Release history Release notifications | RSS feed

This release

2.1.1 This release

2 release files

2.1.0

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

1.2.13

2 release files

1.2.12

2 release files

1.2.11

2 release files

1.2.10

1 release file

1.2.9

2 release files

1.2.8

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page