Flat-Profile

 view release on metacpan or  search on metacpan

README.md  view on Meta::CPAN

        has_header  => 1,
        delimiter   => ",",
        null_empty  => 1,
        null_tokens => ["NULL", "NA"],
        example_cap => 10,
        max_errors  => 1000,
    );

# DESCRIPTION

Flat::Profile is part of the Flat::\* series. It provides streaming-first profiling
for CSV/TSV inputs for practical ETL and legacy data workflows.

Design goals:

- Streaming-first (single pass, predictable memory)
- Practical diagnostics (ragged rows, null policy, examples)
- Stable report format intended to feed Flat::Schema / Flat::Validate

# METHODS

README.md  view on Meta::CPAN

Common named arguments:

- has\_header (boolean)
- delimiter ("," or "\\t")
- encoding (default "UTF-8")

## profile\_file

    my $report = $p->profile_file(%args);

Profiles a CSV/TSV file in a streaming pass and returns a hashref report.

Key named arguments include:

- path (required)
- has\_header
- delimiter
- encoding
- null\_empty (default true)
- null\_tokens (arrayref; default empty)
- example\_cap (default 10)

lib/Flat/Profile.pm  view on Meta::CPAN

        has_header  => 1,
        delimiter   => ",",
        null_empty  => 1,
        null_tokens => ["NULL", "NA"],
        example_cap => 10,
        max_errors  => 1000,
    );

=head1 DESCRIPTION

Flat::Profile is part of the Flat::* series. It provides streaming-first profiling
for CSV/TSV inputs for practical ETL and legacy data workflows.

Design goals:

=over 4

=item *

Streaming-first (single pass, predictable memory)

lib/Flat/Profile.pm  view on Meta::CPAN

=item * delimiter ("," or "\t")

=item * encoding (default "UTF-8")

=back

=head2 profile_file

    my $report = $p->profile_file(%args);

Profiles a CSV/TSV file in a streaming pass and returns a hashref report.

Key named arguments include:

=over 4

=item * path (required)

=item * has_header

=item * delimiter



( run in 1.211 second using v1.01-cache-2.11-cpan-140bd7fdf52 )