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:
- Load data with
fount_eda.read_csv - Check shape and column names —
df.shape,list(df.columns) - Make sure your target column is numeric — rename or cast if needed
- Parse the date column if present —
fount_eda.to_datetime(df["date"]) - Run
fount_eda.eda_printfor a quick terminal summary - Address any high-priority issues from the recommendations
- Split the data and try a quick baseline regressor to benchmark