Recommended Free Tools
iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
The JCars Logistics Power BI project shows how inconsistent identifiers, dates, categories, numbers, and currencies can shape a sales report before a chart is built. Its author describes cleaning a 276-row dataset, then reporting 137 Toyota units and about KES 547 million in Toyota revenue. Those are outputs of this project analysis—not audited company-wide results—and other public analyses of a similar dataset report different totals.
What the JCars dataset contains
Joseph K Wamahiu describes a dataset of 276 vehicle-sales order lines and 32 columns. Each row represents one customer, order, vehicle, and transaction date. The fields cover customers, vehicle specifications, branches and regions, sales representatives, payment, delivery, and logistics. That row-level grain is the starting point for interpreting any total: it is not, by itself, proof that every row represents a completed, paid, or unreversed sale.
The project is a useful learning case for the question “How do I clean and model raw sales data in Power BI?” Its central lesson is that dashboard results depend on how the raw fields are interpreted. A polished visual cannot resolve an ambiguous currency, repair a reused identifier, or establish whether an unusual transaction belongs in revenue.
How the author staged and cleaned the data
The author loaded the source file into Power Query as a staging query named Sales_Raw, duplicated it as a working query named Sales, and applied transformations to the copy. Keeping the staging query available makes it possible to compare prepared values with what arrived in the file instead of overwriting the only visible version of the source.
#1 Best Overall
The reported problems span several different data-quality categories. They should not be treated as one generic “cleanup” task: each affects analysis in a different way.
| Field or issue | What the project reports | Why it matters to analysis |
|---|---|---|
| Order identifiers | Four prefix formats; 19 rows without an ID; three IDs reused across transactions with different customers and dates. | An ID cannot safely be assumed to be a unique transaction key. Grouping or deduplicating on it alone could merge distinct records or discard valid lines. |
| Order and delivery dates | Multiple text formats, Excel serial numbers, and an impossible date value, 2026-13-04. |
Inconsistent parsing can create null dates or incorrect dates, affecting chronological reporting and any time-based analysis. |
| Categories | Inconsistent capitalization, abbreviations, spelling variants, and typos. | Values that mean the same thing can appear as separate categories in filters, groupings, or charts. |
| Names | Digit-for-letter corruption, including Dan1El Kimani and Mary Wanj1ku. |
Text cleanup may improve readability, but inferred corrections should not be mistaken for verified identity matching. |
| Numeric fields | Words or descriptive text such as thirty, two, and 3 cars; a word-form vehicle year and a year the author considered impossible. |
These values cannot all be treated as reliable numbers without explicit conversion and exception handling. |
| Financial fields | KSh, KES, explicit USD, an ambiguous ? symbol, abbreviated millions, and values such as #VALUE!, missing, and TBD. |
Different currencies and placeholders can distort totals or prevent numeric aggregation. The article says the author inferred the ambiguous symbol’s meaning by comparing values with nearby USD-tagged rows; that is an author judgment, not an independently validated currency rule. |
What the cleanup decisions need to preserve
Cleaning is not simply making every column look uniform. For this dataset, a defensible workflow needs to retain the distinction between a corrected value and an unresolved one. In particular, the reused and missing order IDs mean the data does not establish a safe unique key from that field alone. Likewise, invalid dates and placeholder financial values should remain identifiable as exceptions rather than silently turning into plausible-looking values.
Rank #2
- Keep the raw-to-prepared comparison. The project’s separate staging and working queries provide a practical way to inspect transformation effects.
- Make interpretation rules visible. Currency assumptions, spelling normalization, date parsing, and text-to-number conversion can change downstream totals.
- Do not confuse normalization with verification. A corrected-looking name or an inferred currency is still an inference unless checked against a trusted source.
- Resolve transaction inclusion before interpreting results. The available project description does not establish how canceled, refunded, returned, or otherwise unusual transactions were treated.
What the first analysis reported
In the matching project article, Wamahiu reports 137 Toyota units and about KES 547 million in Toyota revenue. The article also reports logistics costs of about KES 26.99 million, described as roughly 5.9% of gross profit. The publication year is not established in the available source record, and these numbers should be read as project outputs rather than audited JCars Logistics performance figures.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →The author characterizes the logistics-cost comparison as a surface-level gut check and says regional or branch-level differences warrant further investigation. The percentage therefore is not a substitute for examining how the cost and gross-profit measures were defined, which transactions were included, or how location-level variation behaves.
Why other JCars totals should not be combined with these
Other public analyses describe a similar 276-row, 32-column dataset but report materially different results. One reports KSh 1.48 billion in revenue and flags limitations involving data quality, financial assumptions, and customer identifiers. Another reports approximately KES 1.94 billion in revenue and a 27.44% gross margin. These figures come from separate analyses; they are not corroboration of the matching article’s Toyota and logistics findings and should not be substituted for them.
Before comparing such reports, align the underlying inputs and definitions. At minimum, check the source file and record count, row grain, treatment of reused IDs, currency conversion and ambiguous-value rules, date parsing, revenue and cost formulas, treatment of canceled or returned transactions, and whether each figure comes from raw, cleaned, or reconciled data. The available sources do not resolve those differences.
Rank #4
What the project does—and does not—establish
The matching article documents cleaning work and a first dashboard pass, not a finished, fully interactive reporting solution. It does not include detailed report pages, complete drill-through and tooltip interactions, a full DAX measure set, or analyst-defined questions. The author identifies time-based measures, a proper fact-and-dimension model, and investigation of unusual transactions as future work.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →That boundary matters when using the project as a learning example. It demonstrates data preparation challenges and an initial analysis, but the described work does not establish a complete semantic model or a validated decision system. Further modeling and reconciliation would be needed before treating the outputs as a dependable basis for operational or financial decisions.
Quick Recap
Best Value
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

