Initial commit: BAF Lakehouse fraud detection pipeline

End-to-end LightGBM fraud detection pipeline built as an R package,
orchestrated by targets with data stored in MinIO via Apache Arrow.
Includes 6-layer Lakehouse architecture, class imbalance tournament,
formally tuned hyperparameters (PR-AUC 0.198), and Quarto RevealJS slides.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-21 21:19:09 -05:00
commit 33d0fc31c7
56 changed files with 15596 additions and 0 deletions

37
man/engineer_features.Rd Normal file
View File

@@ -0,0 +1,37 @@
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/functions.R
\name{engineer_features}
\alias{engineer_features}
\title{Engineer features for the BAF dataset}
\usage{
engineer_features(
in_prefix = "03_primary/variant=Base",
out_prefix = "04_feature/variant=Base",
bucket_name = "baf-fraud",
partitioning = "month",
existing_data_behavior = "delete_matching",
verbose = TRUE
)
}
\arguments{
\item{in_prefix}{Character. Input dataset prefix (e.g., "03_primary/variant=Base").}
\item{out_prefix}{Character. Output dataset prefix (e.g., "04_feature/variant=Base").}
\item{bucket_name}{Character. The S3/MinIO bucket name. Default "baf-fraud".}
\item{partitioning}{Character vector. Columns to partition by. Default "month".}
\item{existing_data_behavior}{Character. Behavior when data exists. Default "delete_matching".}
\item{verbose}{Logical. Whether to print progress messages. Default TRUE.}
}
\value{
Character. The output prefix path for downstream targets.
}
\description{
Reads the primary BAF dataset and engineers new features, such as
\code{n_missing}, which counts the number of missing values across key
tenure and financial columns. This calculation is performed out-of-memory
using Arrow compute.
}