Scientific Data Profiler

Scientific Data Profiler

Inspect the shape of a table before using it. Counts and review rules are shown alongside the source record evidence.

Source records

Up to 1 MiB, 5,000 records, 32 columns and 100,000 cells. Cells: 4,096 characters. UTF-8 CSV/TSV or flat JSON object arrays.

Add records to begin.

Comments & questions

Scientific Data Profiler

A table can be syntactically valid while hiding missing measurements, inconsistent types or a column that never changes. This profiler scans each column and connects a visual distribution to record-level evidence. It does not modify the source or automatically classify a valid observation as an error.

Key features

  • CSV/TSV and flat JSON scalar records with explicit parsing errors
  • Column type counts, missingness, typed distinct values and constants
  • Up to ten numeric histogram bins or eight leading category frequencies
  • Linear quartiles, mean, median and transparent 1.5×IQR fences
  • Suspect source records and complete JSON report download
  • Cancellation and bounded local processing with safe CSV export

How to use

  1. Paste CSV/JSON records or select a UTF-8 file.
  2. Choose the format and CSV delimiter; enable grouping commas only if they mean thousands.
  3. Run the profile and inspect the column overview.
  4. Select a column to inspect its distribution, numeric statistics and suspect records.
  5. Export the JSON report or suspect-record CSV and review flagged values against the original source.

Use cases

  • Check a sensor export for missing measurements and isolated extreme values.
  • Find a constant field or mixed date and text column before analysis.
  • Compare the actual value frequencies in a survey export.
  • Retain source record references while reviewing a spreadsheet import.

Frequently asked questions

What counts as missing?

JSON null, a missing JSON key, an empty CSV cell and whitespace-only strings count as missing. The literal strings null and NA remain text. A fully missing column is empty, not constant; one distinct nonmissing typed value makes a column constant.

How are numbers, dates and identifiers inferred?

Finite decimal and exponent forms within ±9,007,199,254,740,991 are numeric. Leading-zero strings such as 001 stay text. Group commas require the explicit option and strict 1,234.5 syntax. True/false are boolean; valid YYYY-MM-DD strings are dates. Other values remain text, and columns with multiple kinds are mixed.

How are suspected extreme values selected?

For at least four numeric values in a column, sorted positions (n−1)×q define linearly interpolated quartiles. Values below Q1−1.5×IQR or above Q3+1.5×IQR are listed. Mixed columns use their numeric subset. This is a review rule, not proof of a data error; no row is removed.

What does the chart show?

A numeric subset is divided into up to ten equal-width bins, with the final upper boundary included. A constant has one bin. Without numeric values, the eight most frequent typed values and a combined other count are shown. Missing values are counted separately.

Can JSON structures or very large integers be loaded?

JSON input must be an array of flat objects containing scalar values. Duplicate keys and nested objects/arrays are rejected. Numeric tokens that overflow, underflow to zero or exceed the safe magnitude are rejected before conversion; quote exact identifiers as strings. The supported numeric calculations use JavaScript floating-point arithmetic.

What is included in a download?

The JSON report includes every column, rules, statistics, histogram bins and suspect values. The CSV contains suspect evidence with source-record numbers and fences. CSV record numbers count logical records including the header, while JSON numbers start at the first object. Formula-like text is prefixed with an apostrophe in CSV exports.

Privacy

Input and results stay in this page’s browser memory. This tool does not upload table contents, put them in URLs or analytics events, or automatically persist them in browser storage. Downloads are created only when you request them. Editing input clears the previous result.

Related Tools

Tabular Cleaning WorkbenchJSON ↔ CSVJSON FormatterWasm Module InspectorHreflang Matrix CheckerAST Query PlaygroundContainer Build GraphDependency Graph ExplorerSemver Range LabCron Schedule AuditorPatch Review WorkbenchSource Map ExplorerLocalization Catalog AuditorStructured Data ReviewerHTTP Archive AnalyzerWebhook Signature LabProtobuf Schema WorkbenchGraphQL Schema LabAvro Schema EvolutionLocal SQL WorkbenchSchema Form BuilderMesh Repair WorkbenchPipe Network LabRobot Arm Kinematics LabThermal Network LabBeam Response LabGear Train DesignerTolerance Stackup LabSensor Calibration FitPCB Stackup PlannerDigital Filter DesignerNetwork Reachability MapSun Shadow MapGPS Error SimulatorDigital Logic SimulatorAnalog Circuit LabMechanism Linkage LabAnalysis Mesh GeneratorOpenAPI Contract InspectorDatabase Migration PlannerDimensional Equation CheckerTruss Force LabBoolean Minimization LabControl Response LabQueueing Simulation LabGeofence Event SimulatorCoordinate Reference LabSurvey Traverse LabRaster Classification LabChoropleth Design LabMap Print ComposerRaster Reprojection LabElevation Contour MakerTerrain Viewshed LabWatershed DelineatorMap Tile PackagerText File Encoding WorkbenchFilesystem Portability AuditorSBOM License ExplorerFile Signature Auditornpm Lockfile Conflict ResolverSource Secret AuditorOffline Web Package BuilderCertificate Chain InspectorTorrent Metainfo InspectorChunked File PackagerEncrypted File VaultDuplicate File FinderArchive WorkbenchDesign Token ManagerSpacing Token DesignerResponsive Type SystemPackaging Dieline DesignerSVG Icon Sprite PackerFlex Layout PlaygroundCSS Grid PlaygroundRegex Equivalence LabMarkdown Repository AuditorLog Template MinerResponsive Layout AuditorEmail Template PreviewInternal Link GraphState Machine TesterPetri Net SimulatorGit History VisualizerCurl Request WorkbenchBinary Protocol DesignerHex File EditorBinary Patch WorkbenchFile Signature WorkbenchAPI Mock SandboxSchema Column MapperEvent Log SessionizerER Diagram DesignerTime Series Gap AuditorStratified Data SplitterData Lineage DesignerDecision Tree LabData Anonymization WorkbenchData Expectation RunnerJSON Schema ValidatorBasket Pattern AnalyzerRobots Policy TesterSEO HTML AuditorAccessibility Structure AuditorSyndication Feed WorkbenchIndexNow Payload BuilderCrawl Log AnalyzerCSP Policy WorkbenchSearch Performance AnalyzerCSV Formula Risk AuditorCORS Response SimulatorCache Header LabCookie Policy InspectorWeb Vitals Trace LabSitemap Health AuditorBatch File RenamerFile Manifest VerifierFolder Space MapFolder Difference ReviewerRoute Order OptimizerGeoJSON Map EditorPolygon Overlay LabCartographic Label PlacerSpatial Table JoinGeoJSON Topology AuditorGPX Track AnalyzerTrack Privacy RedactorCSV Table JoinCSV Pivot WorkbenchRecord ReconciliationData Dictionary BuilderCanonical Graph AuditorRedirect Plan TesterHTTP response and ping reference testBrowser and System InformationJSON ↔ YAML ConverterXML ↔ JSON ConverterHTML FormatterJavaScript MinifierMock Data Generator.gitignore GeneratorLicense GeneratorUser-Agent ParserPassword Strength CheckerCode to ImageXML FormatterHTTP Status Code LookupMIME Type LookupJS & SQL String EscapeCSS Box Shadow GeneratorCSS Gradient GeneratorIndent ConverterNumber Base ConverterUnicode Escape ConverterUnicode InspectorJSON Structure DiffMarkdown Table GeneratorBase64 EncoderURL EncoderSQL FormatterCron Expression GeneratorRegex TesterUUID GeneratorHash GeneratorTimestamp ConverterJWT DecoderHTML Entity ConverterMarkdown PreviewCSS MinifierMeta Tag GeneratorCase ConverterImage to Base64
Explore all Dev Tools tools →Image/Media →Text/Convert →Life/Fun →