Filter CSV datasets with precision using custom conditions. Supports Equals, Contains, Greater Than, Empty checks, and flexible AND/OR logic with instant export.
Upload your dataset or paste raw rows to apply custom filter conditions.
Filtering tabular records is the foundational operation of the Relational Selection Operator (\(\sigma_P(\mathbf{R})\)), which extracts a subset of tuples from relation \(\mathbf{R}\) that satisfy a specified predicate condition \(P\).
In modern data workflows, analysts frequently need to isolate specific operational cohorts—such as active subscribers in California, transactions exceeding $500, or support tickets missing an email address—without writing complex SQL queries or opening heavy spreadsheet software.
``` [Master Dataset: 10,000 Rows] ├── Row 1: [EMP-01, "Engineering", $135,000, "Active"] ──► MATCH (Keep) ├── Row 2: [EMP-02, "Marketing", $98,000, "Active"] ──► NO MATCH (Discard) ├── Row 3: [EMP-03, "Engineering", $145,000, "Active"] ──► MATCH (Keep) └── Row 4: [EMP-04, "Sales", $92,000, "On Leave"] ──► NO MATCH (Discard)
▼ [Boolean Filter: Dept="Engineering" AND Status="Active"]
[Filtered Subset: 2 Matching Rows (20% of dataset)] ```
ZechKit CSV Filter evaluates multi-rule filter criteria using formal propositional logic:
#### A. Conjunctive Normal Form (AND Mode - Match ALL Rules) A row vector \(\mathbf{r} = (c_1, c_2, \dots, c_m)\) is included in the output if and only if every active rule \(R_k\) evaluates to true:
$$P_{\text{AND}}(\mathbf{r}) = \bigwedge_{k=1}^{K} \text{Operator}_k\left(c_{\text{idx}(k)}, \ v_k\right) = R_1(\mathbf{r}) \land R_2(\mathbf{r}) \land \dots \land R_K(\mathbf{r})$$
#### B. Disjunctive Normal Form (OR Mode - Match ANY Rule) A row is included if at least one rule condition evaluates to true:
$$P_{\text{OR}}(\mathbf{r}) = \bigvee_{k=1}^{K} \text{Operator}_k\left(c_{\text{idx}(k)}, \ v_k\right) = R_1(\mathbf{r}) \lor R_2(\mathbf{r}) \lor \dots \lor R_K(\mathbf{r})$$
The filtering engine provides 10 precision comparison operators tailored for text, numeric, and data completeness evaluations:
contains / does_not_contain: Substring pattern search with case-insensitivity.equals / not_equals: Exact string equality checks.starts_with / ends_with: Prefix and suffix verification (useful for phone area codes, SKUs, or domain names).greater_than (\(>\)) and less_than (\(<\)): Strips currency symbols (\(\$, €, £\)) and thousand-separator commas, converting numeric strings into IEEE 754 floating-point values for mathematically accurate comparisons.is_empty: True if the cell contains only whitespace or is undefined.is_not_empty: True if the cell contains valid populated data.As users add, modify, or remove filter rules, the engine dynamically recalculates data metrics in real time:
The interactive preview table updates instantaneously, providing immediate visual feedback on filter specificity before downloading.
Once the desired subset of data is isolated, ZechKit CSV Filter provides 1-click export options:
To deliver instantaneous interactive performance when filtering 50,000+ rows, the engine constructs a bitmask index vector. Rows satisfying predicates are flagged in memory without mutating or cloning raw string memory, keeping CPU utilization minimal and delivering sub-50ms query responses.
When evaluating numerical filters with floating-point quantities (such as currency values or scientific sensor data), strict binary equality can fail due to IEEE 754 precision artifacts. The filtering engine incorporates an epsilon tolerance factor (\(\epsilon = 10^{-9}\)) for floating-point calculations. Furthermore, when evaluating text predicates against millions of character tokens, substring matchers utilize Boyer-Moore search optimizations to minimize unnecessary character comparisons.
Filtering confidential customer lists, employee salaries, or financial records should never involve transmitting data over the internet.
ZechKit CSV Filter runs 100% locally in your web browser memory. No data is ever uploaded to external servers, ensuring complete privacy, zero latency, and absolute compliance with GDPR, HIPAA, and corporate data governance policies.
Scenario: Filter a customer database to only show users with account balances greater than $1,000 who are located in the United States.
Customer CSV with 5,000 rows
Filtered CSV with 642 matching high-value US customers
Applied two AND conditions: 'country equals United States' and 'account_balance greater than 1000'.