Settings

OBSCURA Research

Statistics and interview coding in one project.

This browser’s Pro key was not accepted: the subscription behind it has ended. Renew or subscribe below.

Research onlyUS$2 a month, 7 days free EverythingUS$5 a month, 7 days free

US$2 a month or US$19 a year for Research, or US$5 a month or US$48 a year for everything. 7 days free. Stripe takes a card, and nothing is charged if you cancel before they end.

OBSCURA Research in the light theme: the demo survey in the data view, sixty respondents with their site, group and wellbeing scores, value labels shown, and the summary of the wellbeing score beside the gridOBSCURA Research in the dark theme: the demo survey in the data view

Research at work

Taken from OBSCURA Research itself, with the demo project it opens in one click: an invented evaluation of a community garden programme, with a survey of 60 respondents and two interviews. Nobody in it is real.

A t-test, from the menu to the tables. The demo project is opened: an invented evaluation of a community garden programme. From Analyse, an independent-samples t-test of wellbeing after twelve weeks by group, with a bar chart of the means. The output gives the group statistics, Levene’s test with both t-tests, the effect size, a sentence in APA style ready to copy, and the chart. Recorded in Research itself; there is no sound.
The output viewer with a one-way ANOVA in APA style: descriptives by site, Levene's test, the ANOVA table and Welch's testThe same ANOVA output in the dark theme
A one-way ANOVA. Wellbeing after twelve weeks across the three sites: the descriptives, Levene’s test, the ANOVA with eta squared, Welch’s test and then Tukey’s comparisons, each figure held to SciPy’s and statsmodels’.
An interview transcript with coded passages marked in the margin by colour, the codes in the source beside it and the code bar open under a selected passageThe same interview being coded, in the dark theme
Coding an interview. Select a passage and choose a code, or press its number. Each code’s passages are marked in the margin in its colour, so overlapping codes stay readable.
A matrix coding query: seven codes against the three sites, counted by the cases coded at each, darker where there are moreThe same matrix in the dark theme
Where codes meet. The codes against the three sites, counted by the cases coded at each, darker where there are more; the table goes to the chi-square test in one step, and co-occurrence counts codes against each other the same way.
The variable view: each variable with its type, width, decimals, label, value labels, missing values, columns, alignment and measureThe same variable view in the dark theme
The variable view. Names, labels, value labels and missing values as SPSS keeps them, and written back into a .sav file that SPSS opens.
Everything it does

SPSS’s tests and NVivo’s coding in one project, with the data and the transcripts kept on this device. Nothing is uploaded. Open .sav, Stata, CSV and Excel files; run t-tests, ANOVA, MANOVA, regression, mediation, factor analysis, survival and the non-parametric tests, with APA tables; code interviews, recordings and open answers, query them, and measure agreement between coders. For students, academics, NHS and charity researchers and market researchers.

Before you start: The common SPSS tests, not all of them: mixed models with one grouping factor, and no structural equation models beyond confirmatory factor analysis. What else it does not do

Compared with SPSS and NVivo.

What it does

Data and variables

A data view of cases and variables, edited in place, with value labels shown or not (Ctrl L), and a variable view of each variable’s name, type, width, decimals, label, value labels, missing values (up to three, or a range and one more), display width, alignment and measure. Filtered cases are struck through, as SPSS shows them.

Files

Opens SPSS .sav files (uncompressed, compressed and .zsav), Stata .dta files from Stata 8 onwards, CSV and Excel workbooks. Saves .sav, .dta, CSV and .xlsx, and the whole project, both sides, as one .oresearch file. The .sav and .dta readers and writers are tested both ways against pyreadstat, the Python reader built on ReadStat.

Transform

Compute with SPSS’s own expression language (MEAN.4(sat1 TO sat5), RND, MISSING, IF, dates such as DATEDIFF and XDATE.YEAR, LAG and seeded random numbers), recode into the same or a new variable, automatic recode, count values within cases, rank cases, visual binning, select cases by a condition or at random, identify duplicates, split file, sort, weight cases, merge files by cases or by a key, aggregate, restructure from wide to long and back, reverse-score items, standardise, make dummy variables, and replace missing values, singly or by multiple imputation (chained equations, pooled by Rubin’s rules).

Describe

Frequencies, descriptives, means by groups, explore (the 5% trimmed mean, percentiles, Shapiro-Wilk and Kolmogorov-Smirnov with Lilliefors’ correction, extreme values and outliers by the boxplot rule) and crosstabs with chi-square, the likelihood ratio, Yates’s correction, Fisher’s exact test for any size of table and Cramér’s V. Missing value analysis: the patterns, Little’s MCAR test and EM estimates.

Test

One-sample, independent (with Levene’s test and Welch’s correction) and paired t-tests, each with its Bayes factor if asked (the JZS prior, as JASP); one-way ANOVA with Welch’s and Brown-Forsythe’s tests, ω², and Tukey HSD, Games-Howell, Bonferroni, Šidák and Scheffé comparisons; factorial ANOVA and ANCOVA with Type III sums of squares, estimated marginal means and Bonferroni, Šidák or Tukey comparisons; repeated measures with Mauchly’s test and the Greenhouse-Geisser and Huynh-Feldt corrections, and mixed between-and-within ANOVA; MANOVA with Pillai’s trace, Wilks’s lambda, Hotelling’s trace, Roy’s root and Box’s M; Pearson, Spearman, Kendall and partial correlation.

Models

Linear regression in blocks or by stepwise selection, with R² change, standardised betas, VIF, residual plots, each case’s Cook’s distance, leverage and studentised residual, and robust standard errors (HC0 to HC3, or clustered); linear mixed models with random intercepts and slopes, by REML or maximum likelihood, with Satterthwaite’s degrees of freedom; generalised linear models: Poisson, negative binomial, binomial with logit, probit or complementary log-log links, and gamma, with offsets; Breusch-Pagan, White and RESET tests; cluster analysis by k-means or by Ward’s or other linkage, with a dendrogram and silhouette widths; binary, multinomial and ordinal logistic regression, with the test of parallel lines; ROC curves with the area, DeLong’s interval and the best cut-off; mediation and moderation as in PROCESS models 4 and 1, with bootstrap confidence intervals, conditional effects and the Johnson-Neyman interval; Kaplan-Meier with the log-rank, Breslow and Tarone-Ware tests, and Cox regression.

Non-parametric tests and scales

Mann-Whitney, Wilcoxon, Kruskal-Wallis and Friedman with Dunn’s pairwise comparisons; chi-square goodness of fit, the binomial test, McNemar and Cochran’s Q. Cronbach’s alpha and McDonald’s omega with item statistics; agreement by Cohen’s kappa (weighted or not), Fleiss’s kappa, Krippendorff’s alpha and the intraclass correlation. Factor analysis by principal components, principal axis or maximum likelihood, rotated by varimax, quartimax, promax or oblimin; confirmatory factor analysis with CFI, TLI, RMSEA and SRMR; power and sample size for the t-tests, ANOVA, regression, chi-square, correlation and two proportions.

Output and syntax

Tables in APA style, charts (histogram with the normal curve, boxplot, scatter with its fit line, bar chart with 95% error bars, Q-Q plot, scree plot, profile plot), a note on each test in plain words and a sentence to report it. Everything run is also written as SPSS syntax (T-TEST GROUPS=group(1 2) /VARIABLES=wb_post.), which can be edited and run again, with TEMPORARY honoured; a colleague’s .sps file opens into it. The output goes to Word, PDF, HTML, or Excel with a sheet for each table.

Sources and coding

Word documents, the text of PDFs, plain text and Markdown come in as sources; pictures are coded by drawing a region; audio and video are coded by their times, beside a transcript lined up with the recording (WebVTT, SRT or timestamped text, or typed here with keys to play, pause and stamp the time). A survey’s open-ended columns become sources whose every answer belongs to its respondent. Codes form a tree with colours and descriptions, and can be merged, moved and renamed. Memos go on the project, a code, a source or a passage, and annotations on any span of text.

Queries

Search the text and code every hit (or its sentence or paragraph); word frequency with English stop words and Porter’s stemmer; keyword in context; coding queries such as "Cost" AND NOT "Access" or "Weather" NEAR/10 "Travel"; matrix coding of codes by an attribute; co-occurrence as a heat map; framework matrices of cases against codes, with a summary written in each cell beside its passages; word clouds; and counts by case sent to the data as variables, or a matrix sent straight to a chi-square test.

Teams without a server

Each coder works in their own copy of the project. Merging a colleague’s file brings their coding in under their name, and Reliability gives Cohen’s kappa, Krippendorff’s alpha and percentage agreement for every code, character by character, as NVivo calculates it. Projects go to and from NVivo, ATLAS.ti and MAXQDA as REFI-QDA files, recordings and their coding included.

Plug-ins

An analysis or an importer somebody has written, installed from a file. Each runs in a sealed box on the device: it is given only the variables it asks for, or the one file it reads, and the browser lets it reach nothing, no network and no storage. What it hands back is shown as tables and text.

How the figures are checked

Every statistic, degree of freedom, p-value and effect size is computed in this page, in JavaScript written for it, and compared on every run of the site’s checks with SciPy and statsmodels on several data sets, normal and skewed, with ties and with missing values. They agree to six significant figures; the largest difference in the last run was a few parts in ten million. The distributions are checked too, including the studentised range that Tukey’s and Games-Howell’s tests use. Mixed models, generalised linear models, robust errors and ROC curves are checked on published data sets as well (lme4’s sleep study, the RAND Health Insurance Experiment, Grunfeld’s investment data, Hanley and McNeil’s CT ratings), against the figures their authors printed; iterative fits agree to five significant figures, and a mixed model’s variances, where the likelihood is flat, to four. Where SPSS has its own definition (skewness and kurtosis, percentiles, Levene’s test, Type III sums of squares) that is the one used, and where it differs from SPSS the note under the table says so.

Why the data stay on the device

Interview transcripts, recordings and survey answers often hold personal data, and ethics committees and data protection rules usually say where they may be kept. OBSCURA Research is a page that runs in your browser: a project is kept in this browser’s private storage on this device, files you open are read here, and files you save are written here. Nothing is sent to a server, and there is no account, no licence server and no fee for each seat. Once opened it keeps working without a connection.

For an ethics application or a data protection impact assessment: the data, transcripts and recordings are processed only on the researcher’s device, and no third party receives them. The page asks this site whether its key is still paid and counts the page view (what each request carries); none of those requests carries data, a file or a file’s name. Your data protection officer can check this in the browser’s network panel.

What it cannot do

Said now, so that nobody pays to find out.

  • Not everything SPSS has. Mixed models have one grouping factor (no crossed or nested random effects) and a normal outcome (no generalised linear mixed models); multiple imputation imputes a variable of more than two categories by predictive mean matching, not a multinomial model. No structural equation models beyond confirmatory factor analysis, no complex samples, no custom tables, no discriminant or correspondence analysis, and of PROCESS’s models only 1 and 4. Exact p-values are given for Fisher’s test, the binomial test, McNemar’s test with few discordant pairs and Mann-Whitney with small samples and no ties; the other non-parametric tests use the normal or chi-square approximation, as SPSS does without its Exact Tests module.
  • .sav and .dta for the common cases. Numeric and string variables, labels, value labels, missing values, measures, formats and long strings are read and written; SPSS’s portable .por format, multiple response sets, custom attributes and date variables’ full range of formats are not. A file’s weight variable is applied as WEIGHT BY, and written back. Stata keeps missing values and labels differently, so a .dta file says what was changed as it is opened or saved.
  • No AI, by design. Nothing here guesses what a passage means, suggests codes or summarises. Coding is done by the researcher; the assistance is counting: word frequency, keyword in context, co-occurrence and search.
  • Not NVivo’s every feature. No automatic transcription: that would mean sending the recordings to a service, so a transcript is typed here or brought in from a file. No social media capture, no relationship maps, no automatic coding by speaker or by theme. Pictures are coded by rectangle, not by free shape. Scanned PDFs need their text recognised first (PDF Studio does this).
  • One person at a time. There is no shared project in the cloud, because that would need a server holding everybody’s data: colleagues work in their own copies and merge, and Reliability compares their coding. Two people cannot edit one project at once.
  • Kept in this browser. Clearing this site’s data deletes a project kept here, so save it as a .oresearch file now and then. Very large data sets (hundreds of thousands of cases) are slow to edit.

Research

No project openOpen the demo, or a file, to begin

Open a project

Data, sources, codes and output together, kept in this browser on this device.

Try the demo

An invented community garden evaluation: a survey of 60 with open answers, and two interviews.

Open a file

SPSS .sav, Stata .dta, CSV, Excel, or a project saved from here.

Import a survey

Code the open answers, each tied to the respondent’s other answers.

Start empty

Type data in, or bring transcripts in for coding.

On this device

  • No projects yet.