Workflows and Recipes

Complete end-to-end examples showing how to use Fount EDA for common data scenarios. Each workflow follows the same basic pattern: load → inspect → clean → EDA → model.

Classic tabular workflow

Use this for standard datasets with numeric features and a single numeric target, with no date column.

from fount_eda import EDA

fount_eda = EDA()

# 1. Load data
df = fount_eda.read_csv("data.csv")
print("Shape:", df.shape)

# 2. Light cleanup
df = df.drop(columns=["unused"], errors="ignore")
df = df[df["Units"] >= 0]

# 3. Run EDA
rep = fount_eda.eda(df, target="Units")
print("Suitability:", rep.suitability_score)

# 4. Split and train a baseline model
X = df.drop(columns=["Units"], errors="ignore")
y = df["Units"]

X_tr, X_te, y_tr, y_te = fount_eda.train_test_split(X, y, test_size=0.2, random_state=42)
reg = fount_eda.ensemble.RandomForestRegressor(n_estimators=300, random_state=0).fit(X_tr, y_tr)

print("Test R²:", reg.score(X_te, y_te))

Time-series workflow

Use this when your dataset has a date column. Parse the date first, then pass it to the EDA suite via datetime_col.

from fount_eda import EDA

fount_eda = EDA()

# 1. Load data
df = fount_eda.read_csv("data_with_dates.csv")

# 2. Parse the date column
df["date"] = fount_eda.to_datetime(df["date"], errors="coerce")

# 3. Run EDA with datetime column
rep = fount_eda.eda(df, target="Units", datetime_col="date")
print("Suitability:", rep.suitability_score)

# 4. Continue with your modeling approach
# ...
📘

Parse the date column before passing it to EDA. Unparsed string dates will not be treated as time data.

Multi-target workflow

Use this when your dataset has more than one numeric target column you want to model or inspect together.

from fount_eda import EDA

fount_eda = EDA()

# 1. Load data
df = fount_eda.read_csv("multi_target.csv")

# 2. Define multiple targets
targets = ["Units_A", "Units_B"]

# 3. Run EDA with multiple targets
rep = fount_eda.eda(df, target=targets, datetime_col="date")
print("Suitability:", rep.suitability_score)

Fast prototyping checklist

Use this as a quick mental checklist when exploring a new dataset:

  1. Load data with fount_eda.read_csv
  2. Check shape and column names — df.shape, list(df.columns)
  3. Make sure your target column is numeric — rename or cast if needed
  4. Parse the date column if present — fount_eda.to_datetime(df["date"])
  5. Run fount_eda.eda_print for a quick terminal summary
  6. Address any high-priority issues from the recommendations
  7. Split the data and try a quick baseline regressor to benchmark