OSINT Jet · Working with public data

Import a CSV without changing the identifiers you are investigating

The file says 00427. Your spreadsheet says 427. That looks harmless until both values exist in the source and belong to different records. Before you sort, match or search a public dataset, check whether opening it changed the clues.

Illustration of ordered tokens entering a grid, with one token lost along a separate path
Conceptual illustration: a tidy table can conceal a missing character.

A CSV is a text file containing fields and records. It does not tell every spreadsheet which fields are identifiers, dates or quantities. An application may make those decisions for you. This guide gives you a small import test and a way to keep the original evidence separate from the version you use for analysis.

Decide what a column means before deciding its format

An identifier answers “which record?” A quantity answers “how much?” You might add two quantities; adding two registration identifiers is meaningless. A field made entirely of digits can still be text for research purposes. Preserve the exact source string unless the issuing system documents a normalization rule.

Microsoft documents two relevant Excel behaviors: automatic conversion can remove leading zeros, and numeric storage has a precision limit of 15 significant digits. Merely changing the format afterward does not restore discarded characters. See Microsoft’s guidance on leading zeros and long numbers.

Scientific notation on screen is a warning to inspect, not proof that every digit has been lost. A narrow column can change display without changing the stored value. Conversely, a wide column can display a damaged number neatly. Compare the underlying value with the original text.

A five-record test before the real import

Synthetic practice data: the codes and labels below are invented. They are not customer records, account numbers or investigation results. Save the block as a UTF-8 text file with the extension .csv. Import a copy; keep the original unchanged.

record_id,label,raw_reference
00427,"Harbour, east",12345678901234567
427,Harbour west,12345678901234568
00008,Archive room,03-04
1E10,Workshop,00091
09,Store room,00092

The expected result is five data records and three columns. The comma inside Harbour, east belongs inside one field. The two long references differ in their last character. 03-04 is deliberately an uninterpreted reference here, not a date. 1E10 is deliberately a code, not a calculation.

CheckpointExpected valueWhat failure would change
First two IDs00427 and 427 remain differentA join or duplicate-removal step could merge two records.
Long referencesBoth 17-character strings survive exactlyA search may use a reference that never appeared in the file.
Third reference03-04 remains textThe software could assign a date meaning the source never supplied.
Fourth ID1E10 remains literalAn exponent-like code could become a number.
First labelOne field containing its commaBroken field boundaries would shift the rest of the row.

CSV quoting protects field boundaries; it is not a universal instruction to store a field as text. The RFC 4180 description of CSV explains delimiters and quoted fields. In particular, a simple count of commas or line breaks is not a reliable record count when quoted fields contain either.

Import deliberately in Excel or Calc

In Excel, use Data → From Text/CSV rather than relying on a double-click. Check the delimiter and encoding in the preview, then enter the transformation editor. Set identifier and uninterpreted-reference columns to Text before loading. Microsoft describes the available import routes in its text and CSV import documentation; wording varies by version.

Inspect the transformation steps as well as the final column label. If an earlier automatic type-conversion step already changed a value, a later Text step can preserve the damaged version. Remove or correct the premature conversion and reread from the untouched source. Run the five-record check again before importing your evidence file.

In LibreOffice Calc’s Text Import dialog, choose the matching character set and separator. Select the relevant preview columns and explicitly assign Text. Turning off “Detect special numbers” alone is insufficient: ordinary decimal strings can still be interpreted as numbers. LibreOffice’s import reference describes these controls and the separate option for quoted fields.

If the preview turns a Persian label into unreadable characters, stop and determine the source encoding. Do not repair it by guessing letters. Likewise, do not enable external content or run anything supplied inside an unfamiliar file just to complete an import.

Keep a raw column beside every comparison key

After a successful import, create a separate working column for any cleanup. Call it something explicit, such as comparison_key, and record its rule. Retain record_id_raw, the source URL, the retrieval date and the source record reference. This lets a reviewer distinguish what the publisher supplied from what you transformed.

For example, trimming surrounding spaces may help compare a documented code format. Removing all punctuation may be wrong. Turning every code into a number is wrong when leading zeros carry meaning. Even a valid transformation for one registry may be invalid for another. Use the identifier’s system or jurisdiction alongside its value when those define its uniqueness.

Before joining two tables, count how often each proposed key occurs in each table. If one side contains two rows for a key and the other contains three, an ordinary matching join can produce six combinations. That is not six independently discovered relationships. Inspect duplicates, blank keys and unmatched rows before interpreting the result.

If the file has already been damaged

Return to the original download and repeat the import. Do not guess how many zeros to add. If the source specification genuinely fixes the width, that rule can inform a documented repair, but compare repaired values against source records before relying on them. Digits lost to numeric precision cannot be recovered by making the font smaller or adding a custom format.

If the original is unavailable, mark the affected fields as uncertain and obtain a fresh authoritative copy. A match based on a reconstructed identifier should not silently become a confirmed link in a report.

A useful handoff, rather than another spreadsheet

Keep a short import note: original filename and source; encoding and delimiter; columns forced to Text; five-record test result; cleanup rules; duplicate-key findings; unresolved discrepancies. Save the analysis separately. If you export to CSV again, inspect a copy as plain text and test its next import too.

When a preserved identifier leads to a company or domain question, take the exact string and its source into the relevant OSINT Jet company investigation workflow. Specify the relationship you want checked. A well-formed spreadsheet is useful preparation; it is not evidence that two entities are connected. For the final write-up, use the report template to keep observations, transformations and conclusions distinguishable.

Continue the practical OSINT learning path

Published 10 October 2026 · OSINT Jet

Suggest a correction · نسخه فارسی