How to use it 01 Import once. The Import tab takes pasted text or a .csv/.tsv/.txt file and auto-detects the delimiter (comma, tab, semicolon or runs of spaces) and whether the first row is a header. Import as matrix writes one variable; Import by column writes one vector per column under the cleaned header names (my.col becomes my_col). 02 Inspect and edit. Click a row for its shape and preview, summary cards (n, min, max, mean, sd, non-finite), an editable grid capped at the first 100 rows × 26 columns, and a chart: line or histogram for vectors, a scatter for a two-column matrix. Tables render read-only. 03 Derive a new variable. Transpose, Normalise 0–1, z-score, Sort, Diff, Cumsum and Take column write a new variable named base_suffix (y_z) with the operation recorded as its provenance note. 04 Snapshot with scenarios. The Scenarios tab saves a named snapshot of every variable, up to 20. Load replaces the whole workspace after a confirmation, Merge overwrites same-named variables only, and any two snapshots diff by name. 05 Hand data on. Export the selected variable as CSV, the whole workspace as JSON (values plus notes), or copy MATLAB, Python and R literals — including an init block for every variable — from the Language handoff tab.
Worked example Paste this into the Import tab:
Step
On-screen readout
After paste
Delimiter: , · header: x | y · 3 rows × 2 cols
Import by column
Imported 2 variables; x = 1 2 3 , y = 2.5 4.1 6.7 (both 3-vectors)
Inspect y
n 3 · min 2.5 · max 6.7 · mean 4.43333 · sd 2.11975 · non-finite 0
Press z-score
Created y_z = zscore(y); mean -1.4803e-16 , sd 1 , preview -0.912058 -0.157251 1.06931
The z-score uses the sample sd above, so the mean card of y_z reads -1.4803e-16 — binary arithmetic just off zero, not a typo — while its sd card reads 1 . The Language handoff tab prints the same numbers in the target syntax:
Scenarios make the what-if version of the same idea: with scale = 3 saved as Baseline and scale = 5 saved as After, the diff table shows Δ = 2 .
text x,y
1,2.5
2,4.1
3,6.7r x <- c(1, 2, 3)
y <- c(2.5, 4.1, 6.7)
y_z <- c(-0.9120579223975365, -0.15725136593061, 1.069309288328146)
Live values, snapshots and references The workspace is the application's only live data: editing a variable changes it in place, and a handoff carrying a reference resolves that name when the receiving panel consumes it, so the numbers are not copied. A scenario is the opposite — saving deep-copies every variable, later edits never touch it, and Load or Merge writes the snapshot back; re-save to refresh it. Renaming or deleting a variable breaks references to the old name.
Limits to keep in mind
Grids are capped, the data is not. The editor shows the first 100 rows × 26 columns and tables are read-only, but the variable keeps every cell and the CSV export writes all of them.
Names are identifiers. [A-Za-z_][A-Za-z0-9_]* only, no dots, and reserved words such as if, end, pi and ans are refused.
The 20,000-element boundary The workspace saves variables to local storage as they change, but only up to 20,000 elements. A 200×100 matrix sits exactly on that line and survives a reload; a 201×100 matrix (20,100 elements) stays in memory only — inspect, derive and export it while the tab is open, but after a reload it is gone from the table with no warning. In a direct test of the store, saving small = [1, 2, 3] and then the 201×100 matrix left the saved record holding only small, and a fresh load returned only small. Scenario snapshots filter at the same boundary. Tall imports are safer split by column, because each 201-element vector is far below the line.
Where it fits One import, several panels Load an x, y pair once; the statistics, regression, matrix and graphing panels resolve the values by name instead of holding a stale copy.
Baseline versus after Save a scenario before an experiment and another after; Load restores the baseline, Merge keeps variables the snapshot does not mention, and the diff table gives the per-scalar Δ.
Data into code Copy the MATLAB, Python or R init block into a script's first line; the MATLAB kernel seeds from the workspace and the R panel can inject it.
Privacy Import, editing, transforms, charts, scenarios and exports all run in your browser and stay in local storage; nothing is uploaded and no server records what you paste.
References
IETF, RFC 4180: Common Format and MIME Type for Comma-Separated Values (CSV) Files , rfc-editor.org (访问日期:2026-10-01)— delimiter, header and record rules behind the import parser.
NIST/SEMATECH, e-Handbook of Statistical Methods , §1.3.5.2 Mean, Variance, Standard Deviation, itl.nist.gov (访问日期:2026-10-01)— the n − 1 sample sd shown in the inspector.
MDN Web Docs, Window.localStorage (访问日期:2026-10-01)— the per-origin store that keeps variables between reloads.
IETF, RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format , rfc-editor.org (访问日期:2026-10-01)— the format of the workspace export.
R Core Team, data.frame: Data Frames , stat.ethz.ch (访问日期:2026-10-01)— the R literal emitted for table variables.
Calculators in this hub
Hand-picked tools, one click away. The mini versions compute live and carry your values into the full calculator.
Sources & review
Reviewed by CalcX Editorial Team
Updated 2026-10-01