Data Collection

Spreadsheet for data entry and management

Overview

The worksheet is the central data hub of DMAIC.io. All measurements, attributes, and intermediate results live here — similar to a spreadsheet in Excel or Minitab. Every analysis module reads its columns from this worksheet.

Columns and column types: Each column has a name, a type (numeric, text, date, boolean), and optionally a unit. The type controls how values are interpreted and which columns analysis modules offer for selection.

Rows: One row represents one observation — e.g. one measured part, one transaction, one event. Empty cells are skipped automatically in most analyses.

Multiple sheets (workbook): A worksheet can contain several tabs — e.g. "Raw data", "Cleaned", "Sample shift A". Use the tab bar at the bottom to add, rename, duplicate, or delete sheets.

Formulas: Cells starting with "=" are formulas (e.g. =A1+B1, =MEAN(A:A)). They are evaluated immediately and recalculated automatically when the worksheet is reopened.

Operation

Entering data

  • Click a cell and type — Enter moves down, Tab moves right.
  • Select a range and use Ctrl+C / Ctrl+V to copy or paste — also from Excel.
  • Click a column header to change name, type, and unit.
  • Ctrl+Z / Ctrl+Y for undo and redo.

Import and export

  • CSV or XLSX files can be loaded via drag & drop or the import bar.
  • Column types are detected automatically on import; correct them manually if needed.
  • Export to CSV or XLSX via the export bar — the entire active sheet is written out.

Managing sheets

  • Use "+" at the end of the tab bar to add a new sheet.
  • Right-click a tab → rename, duplicate, delete.
  • Sheets can be reordered by dragging tabs in the tab bar.

Column scan

The column scan checks whether all values in a column belong to the same data type. Right-click a column header → "Column scan" to open a panel with the following information:

  • Overview: total count, filled and empty cells.
  • Dominant type: the most frequently detected data type (numeric, text, date, time, currency, percent).
  • Type distribution: a colored bar and table show the proportion of each detected type.
  • Spelling variants: similar text entries are grouped together. Stage 1 (safe): identical after folding case, whitespace, diacritics, and ß — e.g. "yes"/"Yes"/" YES ", "Müller"/"Muller", "café"/"cafe", "Straße"/"Strasse". Stage 2: typo heuristic via edit distance (up to 3 edits depending on word length; transpositions like "teh"/"the" count as 1) — catches "Mueller"/"Muller", "Schraube"/"Schraueb", "Liferant"/"Lieferant". Fuzzy matches are marked with "≈" and should be reviewed especially carefully. Clicking jumps to the first affected cell; corrections are made manually.
  • Outliers: cells whose type differs from the dominant type are listed individually — with row number and value. Click an entry to jump directly to the affected cell.
  • Tip: after a data import, run the column scan on each column first to catch erroneous or mixed entries early.

Pitfalls

Wrong column type: If a numeric column is accidentally set to "text", analysis modules will either not offer it or treat it as a categorical attribute. Check the column type whenever an expected column is missing.

Mixed units in one column: Numbers with different units (mm and cm) in the same column produce wrong statistics. Use exactly one unit per column — fall back to the unit converter module if needed.

Empty rows in the middle of a dataset: Some analyses treat empty rows as "missing" and skip them, others abort. When in doubt, clean the dataset before analysis.

Formulas not updated after data change: Formulas are recalculated on every cell change. If a value still looks stale, reopening the sheet (or F5 in the browser) forces a full recalculation.

Too many sheets: Intermediate snapshots, filtered extracts, and backups in different sheets are useful — but quickly become confusing. Use clear names and delete obsolete sheets.

Column roles

In addition to the column type (how are the values stored?) each column carries an analytical role (how are they meant?). The role decides which charts and statistics make sense — it is the basis of the chart-suggestion tool and mirrors the scale-of-measurement idea in Tableau and Minitab.

Example: a column "Machine" with values 1, 2, 3, 4 is numerically stored but semantically categorical — its mean is meaningless. Heuristics alone cannot get this right, so each column has an explicit role field on top of its storage type.

Continuous: Numeric measurements with meaningful arithmetic — lengths, weights, times, yields. Mean, standard deviation, and histogram apply.

Categorical: Unordered categories — shift, machine, region. Visualized with Pareto, bar, or pie. No meaningful mean.

Ordinal: Ordered categories with a rank but no fixed spacing — "small/medium/large", school grades, Likert scales. The bar (ordered) is the standard plot.

Date / time: A time axis — prerequisite for run charts, time series, and control charts over time.

Identifier: Unique keys such as serial numbers, part IDs, lot codes — no statistics, used purely for traceability. The chart-suggestion tool ignores identifier columns.

Free text: Comments, descriptions, observations — e.g. "scratch on top side". Not statistically analyzable, but valuable as context.

Badge in the column header: Each column shows a badge with dual encoding: the shape (#, Abc, …) indicates the storage type, the color the role. A small blue dot in the top-right marks manually-set roles — these are not overwritten by the heuristic as long as they remain valid for the type.

Change role manually: Clicking the badge opens a two-column picker: type on the left, role on the right. Roles that are not valid for the current type are hidden. Changing the type resets the role only when the previous role becomes invalid for the new type.

Only four roles are inferred automatically: Continuous, Categorical, Date, Free text. Ordinal and Identifier must be set by hand — the heuristic cannot tell "Machine 1–4" (categorical) from "Grade 1–6" (ordinal) without domain knowledge.

Examples

This module ships with the following example datasets — load any of them in the app with a single click.