ScLRTC: imputation for single-cell RNA-seq data via low-rank tensor completion.
The main results reproduced: recomputed values matched the published ones within tolerance.
- ✓Reported values were directly comparable
- ✓No authors-side cause for any deviation
- 🟡Could not use the authors’ exact input data
- 🟡A deviation arose in the data or preprocessing
- 🟡Reported values were not (fully) derivable from the shared data
- 🟡The deviation was non-trivial in magnitude
- 🟡The central claim did not (fully) hold under reproduction
- 🟡Overall, the reproduction showed a material discrepancy
A 0–100 reproducibility-quality score from the per-question grades, shown as a z-score: standard deviations above (+) or below (−) the mean of comparable assessments.
▸Reproduction agent’s raw note
C1 (the deterministic, self-contained anchor that every downstream result depends on) is REPRODUCED: running the authors' own scLRTC code (commit eb553fd) under GNU Octave on the repo-shipped Yan input with the published Table-1 parameters regenerates the shipped imputed matrix yanltrc.csv at pearson_r=0.99996 (rel_fro=0.94%, 1.62M entries, 18042x90 exact dim match). Not bit-exact (Octave-vs-MATLAB SVD/float + portable-vs-Toolbox pdist tie-breaking + near-zero clamping) -> graded within-tol. Downstream C2-C6 not computed: a shared «infra»+HOME quota outage forced ephemeral /tmp + a 10-min output-capture window that the heavy R/Splatter/large-data pipelines do not fit (C3/C6 are also unseeded->only ballpark). Honest partial: strong anchor reproduced, downstream blocked by a central storage-quota outage (flagged to operator).
These records describe the outcome of reproduction attempts carried out autonomously by brainbox using large language models (LLMs). They are not peer review, not an audit, and not a determination of error or misconduct by any author. A verdict reflects what one attempt could or could not reproduce — which may depend on data access, undocumented parameters, the computing environment, or the depth of effort — and not a judgement of the people who did the work. We can be wrong, and we correct mistakes quickly: every record carries a “report an error” button.
Assessment versions
Every reproduction run is kept as an immutable version — anchored to the data as it stood, with a tamper-evident chain hash. A rerun (e.g. after an author updates a deposit) adds a new version; the previous one stays on record.
-
v1 current initial assessmentassessed: 2026-06-19 ⛓ bb6ac2f683ed
✎ I am an author of this paper
Updated or fixed a deposit, or is there an erratum? Ask us to re-run the metrics. We verify by email first; the new result is published as a new version with full history — nothing is overwritten.
Provenance — full disclosure
When this reproduction was carried out, which methodology version was used, and by whom — so the record can be audited and checked independently.
- Reproduced
- 2026-06-22
- Rubric version
- v1.0
- Assessed by
-
🤖 AI curator · claude (ai-curator room) · v1.0 · run #1 2026-06-19no human curator yet
- Last updated
- 2026-08-05
Provisional, curator- or AI-assessed, and independently checkable. A reproduction outcome states what one attempt could reproduce — not a judgement of the authors.
Deep full-text extraction
Model: sonnetBecause dropout events introduce false zeros and noise into scRNA-seq gene-cell expression matrices, exploiting the similarity of single cells to build a low-rank tensor and completing it can more accurately recover true expression values than existing matrix-based or deep-learning imputation methods.
- ★ scLRTC imputes dropout entries closest to the original expression values on simulated datasets, outperforming other state-of-the-art methods by SSE and PCC. finding
- ★ scLRTC achieves the most accurate cell classification results across multiple real datasets regardless of the clustering method used (SC3, t-SNE+K-means, or Louvain), evaluated by ARI and NMI. finding
- ★ scLRTC is effective for cell visualization (via UMAP, higher silhouette coefficients) and for inferring cell lineage trajectories. finding
- ★ scLRTC builds a third-order low-rank tensor from single-cell similarity and uses tensor decomposition to denoise the expression data. method
- ★ scLRTC reconstructs cell expression using a low-rank tensor completion algorithm that restores gene-to-gene and cell-to-cell correlations. mechanism
- The underlying true single-cell expression matrix can be approximated by a low-rank matrix because cells of the same type exhibit similar expression patterns. mechanism
- scImpute's weaker clustering performance may result from its reliance on spectral clustering, which is sensitive to unbalanced clusters. mechanism
- Source code of scLRTC is publicly available on GitHub. resource
| Assay | System | Perturbation | Readout | Platform |
|---|---|---|---|---|
| scRNA-seq dropout imputation followed by SC3 clustering | Usoskin, Pollen, Yan, Zeisel, Mouse, PBMC published scRNA-seq datasets | computational imputation of dropout entries (scLRTC vs DrImpute, SAVER, scImpute, MAGIC, CMF-Impute, PBLR) | adjusted rand index (ARI), normalized mutual information (NMI) | — |
| scRNA-seq imputation followed by t-SNE + K-means clustering (20 repeats) | Pollen and Usoskin datasets | computational imputation (scLRTC vs comparator methods) | ARI (median and maximum across repeats), Wilcoxon rank-sum test significance | t-SNE, perplexity=10 |
| scRNA-seq imputation followed by Scanpy Louvain clustering | Zeisel dataset and large Chen dataset (>10,000 cells) | computational imputation (scLRTC vs WEDGE, scGNN, raw data) | ARI | Scanpy |
| UMAP dimensionality reduction and visualization | Yan, Pollen, Usoskin, Zeisel datasets | computational imputation before vs after | silhouette coefficient (SC) | UMAP |
| Data masking imputation accuracy evaluation | Loh dataset (real scRNA-seq) | 5% of non-zero entries randomly masked to zero, 5 repetitions | sum of squared error (SSE), Pearson correlation coefficient (PCC) vs true values | — |
| Simulated scRNA-seq data imputation at varying dropout rates | Splatter-simulated three-cell-population dataset | 40%, 50%, 60%, 70% entries masked (dropout shape parameter ds = -0.3, 0, 0.05, 0.25) | SSE, PCC, t-SNE visual consistency with unmasked (Full) data | Splatter R/Bioconductor package v1.10.1 |
| Gene-gene and cell-cell correlation analysis | Splatter-simulated dataset at 40% dropout rate (ds=-0.3) | computational imputation (scLRTC vs MAGIC, scImpute, others) | correlation heatmaps, violin plots of expression distribution | — |
| Differential expression analysis (MAST) | Splatter-simulated dataset | computational imputation (scLRTC vs DrImpute, SAVER, scImpute, MAGIC, CMF-Impute) | ROC curves and AUC for recovery of true DE genes (P < 0.01) | MAST |
- – On the Loh dataset masking test, scLRTC achieved the lowest SSE (268.8) and highest PCC (0.707) among all compared imputation methods. SSE=268.8; PCC=0.707
- ▲ Using Louvain clustering on the Zeisel dataset, scLRTC achieved a higher ARI than WEDGE and scGNN. ARI: scLRTC 0.692 vs WEDGE 0.560 vs scGNN 0.678
- ▲ On the large Chen dataset (>10,000 cells), scLRTC improved Louvain clustering ARI relative to raw (unimputed) data. ARI increased from 0.611 (raw) to 0.673 (scLRTC)
- ▲ In t-SNE+K-means clustering on the Pollen dataset (20 runs), scLRTC had the highest median and maximum ARI, exceeding DrImpute's maximum. median 0.722, max 0.853 (scLRTC) vs max 0.847 (DrImpute)
- ▲ In t-SNE+K-means clustering on the Usoskin dataset (20 runs), scLRTC had the highest median and maximum ARI among all compared methods. median 0.684, max 0.742
- ▲ UMAP-based visualization showed scLRTC produced the highest silhouette coefficients across four datasets. SC = 0.884 (Yan), 0.797 (Pollen), 0.861 (Usoskin), 0.639 (Zeisel)
- ▲ scLRTC had the best ARI performance via SC3 clustering across Usoskin, Pollen, Yan, Zeisel, Mouse and PBMC datasets, with NMI on Usoskin competitive with CMF-Impute.
- – As simulated dropout rate increased (40-70%), imputation accuracy of all methods declined, but scLRTC remained the best-performing method by SSE and PCC.
- other SSE = 268.8 (scLRTC imputation error on Loh dataset masked entries, lowest among compared methods)
- correlation PCC = 0.707 (scLRTC imputation accuracy on Loh dataset masked entries, highest among compared methods)
- other ARI = 0.692 (scLRTC) vs 0.560 (WEDGE) vs 0.678 (scGNN) (Louvain clustering on Zeisel dataset)
- other ARI increased from 0.611 to 0.673 (Chen dataset Louvain clustering, raw vs scLRTC-imputed (n>10,000 cells))
- other SC = 0.884, 0.797, 0.861, 0.639 (UMAP silhouette coefficients for scLRTC on Yan, Pollen, Usoskin, Zeisel respectively)
- other median ARI = 0.722, max ARI = 0.853 (t-SNE+K-means clustering repeated 20 times on Pollen dataset, scLRTC)
- other median ARI = 0.684, max ARI = 0.742 (t-SNE+K-means clustering repeated 20 times on Usoskin dataset, scLRTC)
- pvalue P < 0.05 (Wilcoxon rank-sum test) (statistical significance of ARI difference between scLRTC and comparator methods on Pollen/Usoskin)
Statistical methods review
Model: sonnetA neutral, descriptive read of the statistical approach — what was done, and (for shared learning, not as criticism) what could also have been done.
This paper proposes and benchmarks scLRTC, a low-rank tensor completion imputation method for scRNA-seq dropout events, comparing it against eight competing methods across nine real datasets and four Splatter-simulated datasets. Performance was assessed with clustering metrics (ARI, NMI), imputation accuracy metrics (SSE, PCC), silhouette coefficients after UMAP visualization, and DE gene recovery via ROC/AUC. Statistical significance of clustering differences was formally tested only in the t-SNE+K-means experiment (20 runs) via Wilcoxon rank-sum test; all other comparisons were reported as single-run point estimates without inferential testing.
| Test | Applied to | n | Assumptions |
|---|---|---|---|
| Wilcoxon rank-sum test (P < 0.05 threshold) | Pairwise comparison of ARI values from t-SNE+K-means clustering (20 runs) between scLRTC and each competing method on Pollen and Usoskin datasets (Fig. 2A, 2B) | 20 repetitions of t-SNE+K-means per method per dataset | not stated |
| MAST (hurdle model for single-cell differential expression), P < 0.01 threshold | Identification of differentially expressed genes in simulated data at 40% dropout rate to generate reference DE gene lists for ROC/AUC analysis (Fig. 9B) | — | not stated |
| Pearson correlation coefficient (PCC) | Agreement between imputed and true unmasked values in masking experiments on Loh dataset (5 repetitions) and simulation datasets at four dropout rates (Fig. 5, 7) | 5% of non-zero entries masked; 5 repetitions for Loh; single run per dropout rate for simulation | not stated |
| Sum of squared errors (SSE) | Imputation accuracy on Loh dataset masking (5 repetitions) and simulation datasets at four dropout rates (Fig. 5, 7) | 5 repetitions for real dataset; single run per dropout level for simulation | na |
| Adjusted Rand Index (ARI) and Normalized Mutual Information (NMI) | Cell clustering accuracy after SC3 clustering on Usoskin, Pollen, Yan, Zeisel, Mouse, PBMC; after Louvain clustering on Zeisel and Chen (Fig. 1) | — | na |
| Silhouette coefficient (SC) and ROC-AUC | SC: quality of UMAP embedding on Yan, Pollen, Usoskin, Zeisel (Fig. 3, 4); ROC-AUC: DE gene recovery precision/recall tradeoff across imputation methods (Fig. 9B) | — | na |
-
Multiple pairwise Wilcoxon tests were conducted comparing scLRTC to each competing method across datasets without correction for multiple comparisons↳ Could also: A Friedman test (non-parametric equivalent of repeated-measures ANOVA across methods and datasets) followed by Nemenyi or Wilcoxon post-hoc tests with Bonferroni/Holm correction could also have been used; this is a standard approach for multi-algorithm benchmarking studies — Correcting for the family-wise error rate across pairwise tests limits accumulation of Type I error; the Friedman + post-hoc framework has become a community standard in algorithm comparison papers (e.g., Demšar 2006, JMLR)
-
Clustering quality (ARI, NMI) and imputation accuracy (SSE, PCC) were reported as single-run point estimates for most datasets; repeated runs were performed only for t-SNE+K-means (20 runs) and masking (5 runs)↳ Could also: Running all stochastic elements (random masking, clustering initialization) multiple times across all datasets and reporting median with IQR or 95% bootstrap CI could also have been done — Repeated runs characterize method stability and separate true performance differences from variation due to random initialization or masking choice, providing a more complete picture across the full benchmark
-
Imputation accuracy was quantified with Pearson correlation coefficient (PCC) and SSE between imputed and true unmasked values↳ Could also: Spearman rank correlation could also have been used alongside or instead of Pearson correlation — Spearman correlation does not assume a linear relationship and is less sensitive to extreme values, which may be relevant for gene expression data that retain a skewed distribution even after log transformation
-
DE gene recovery was evaluated using ROC-AUC summarizing precision-recall performance across thresholds (Fig. 9B)↳ Could also: Precision-recall AUC (PRAUC) could also have been reported alongside ROC-AUC — When true DE genes are a small fraction of all tested genes (class imbalance typical in scRNA-seq), PRAUC is generally more sensitive to false discovery than ROC-AUC, which can remain high even under substantial false positive rates
-
Real-data masking was performed at a single fraction (5% of non-zero entries) on a single dataset (Loh)↳ Could also: Varying the masking fraction (e.g., 5%, 10%, 20%) across multiple real datasets could also have been done — A single masking fraction and dataset may not capture the full range of dropout scenarios; evaluating across fractions and datasets gives a more complete picture of how method accuracy changes with missingness level
-
Clustering accuracy for the SC3, Louvain, and dimensionality-reduction experiments was reported from single runs, even though these algorithms have stochastic components↳ Could also: Reporting results from multiple independent runs with a summary statistic and a spread measure (e.g., median ± IQR) could also have been done for all clustering experiments — Stochastic clustering methods can vary between runs; quantifying run-to-run variability would clarify whether observed performance differences between methods exceed within-method variance
What was reproduced
The exact results taken into scope, with each reported value next to the value our attempt produced.
Scope — pmid-34844559 (scLRTC)
Paper: Pan X, Li Z, Qin S, Yu M, Hu H. ScLRTC: imputation for single-cell RNA-seq data via low-rank tensor completion. BMC Genomics 2021. PMID 34844559, PMCID PMC8628418, DOI 10.1186/s12864-021-08101-3.
Code: https://github.com/jianghuaijie/scLRTC @ commit
eb553fd4c38d8f6f7b1464cdcb2f15bb8d4e9291 (2021-03-25, MATLAB; authors' own code, P16 N/A).
What the method is: scLRTC imputes scRNA-seq dropout. Per cell it builds a
3rd-order tensor from the cell + its k-1 correlation-nearest neighbours and p-1
distance-feature neighbours, then runs an ADMM low-rank tensor-completion
(ADMMLRTC.m, nuclear-norm minimisation over the 3 unfoldings, up to 500
iters). Core source: scLRTC.m, ADMMLRTC.m, process.m, private/{Fold, Unfold,Pro2TraceNorm}.m. Downstream analysis: R scripts in analysis/ (SC3,
TSCAN, t-SNE+kmeans, UMAP, MAST DE, Splatter simulation).
Datasets the paper uses (Table 3)
| Dataset | clusters | cells | genes | standard | accession |
|---|---|---|---|---|---|
| Pollen | 11 | 301 | 23,730 | Gold | SRA P041736 |
| Usoskin | 4 | 622 | 25,334 | Silver | GSE59739 (brief's named accession) |
| Yan | 7 | 90 | 20,214 | Gold | GSE36552 (shipped in repo as YANDATA.csv) |
| Zeisel | 9 | 3005 | 19,972 | Gold | GSE60361 |
| Mouse(bladder) | 16 | 2100 | 20,670 | Gold | figshare/Mouse Cell Atlas |
| PBMC | 8 | 4340 | 33,694 | Silver | 10x |
| Chen | 46 | 12,089 | 23,284 | Silver | GSE87544 |
| Loh | 8 | 429 | 23,794 | Gold | — |
| Petropoulos | 5 | 1529 | 21,749 | Copper | E-MTAB-3929 |
Algorithm params (Table 1) for Yan: K=5, P=5, α=[1 1e-2 2e-3], ρ=1e-5, ε=1e-2
— identical to the shipped demo.m.
IN SCOPE (pipeline-derived, computational)
- C1 — PRIMARY, fully self-contained 1:1. Run scLRTC on the repo-shipped
YANDATA.csvwith the demo/Table-1 Yan params → must regenerate the repo-shipped imputed outputyanltrc.csv. Deterministic algorithm (no RNG; ADMM + SVD + sorting), no external data needed. Pipeline: scLRTC (MATLAB/Octave). This is the load-bearing core that every downstream result depends on. - C2 — downstream SC3 clustering on imputed Yan. ARI/NMI reported in Fig 1 for 6 datasets incl. Yan. Pipeline: SC3 (R). Reproduce the Yan point.
- C3 — simulation masking SSE/PCC. Reported: lowest SSE = 268.8, highest
PCC = 0.707 on masked simulated data (Splatter, Table 2 params). Pipeline:
Splatter sim (R) + mask + scLRTC + SSE/PCC eval (
analysis/simulation.R). Harder: no random seed published → stochastic. - C4 — t-SNE+Kmeans ARI. Pollen median 0.722 / max 0.853; Usoskin median 0.684 / max 0.742 (Fig 2). Needs Pollen + Usoskin(GSE59739) data; 20 stochastic t-SNE runs. Attempt if data obtainable.
- C5 — Louvain ARI on large data. Zeisel 0.692; Chen raw 0.611→0.673. Needs large external downloads (Zeisel 3005, Chen 12089 cells). Lower priority.
OUT OF SCOPE
- No wet-lab / manual results (all results are computational).
- Qualitative UMAP panels (Fig 3,4) — visual; silhouette-coefficient numbers only as annotations, not tabulated → treated as non-pinnable unless a number is recoverable.
- DE-gene AUC=0.971 (Fig): depends on the same unseeded Splatter sim as C3; attempt only if C3 sim is established.
Priority
C1 (anchor, deterministic) → C2 (Yan SC3, self-contained from C1 output) → C3 (sim SSE/PCC) → C4 → C5. No time limit; push past the floor honestly.
Assessments & scoring basis
Each contributor’s verdict, the per-question basis, and the auditable, itemised worksheet behind it.
An automated assessment. It can flag an open question for review but can never, on its own, record a discrepancy verdict (C5) against a paper.
Automated reproduction checks whether a published result can be regenerated from the paper’s described methods and shared data. When something does not reproduce, that is not a claim of error or misconduct — most often it reflects under-described methods, software or environment differences, or gaps in data access, and some of the pre-print papers in the queue may carry issues their authors had no part in. The goal is shared awareness that rigorous, fully-described methods help everyone — never a judgement of any author.
Are you an author? We would genuinely like to hear from you — to clarify the record, add data or code, re-run the pipeline after an accession update, and publish your response right next to the assessment. Everything here is open and auditable.
🚩 Report an error in this record
Spotted something wrong — a verdict you’d contest, a data or value error, or a private detail that slipped through? Tell us, with a short justification. Authors and readers are equally welcome to write in; we review every report.
Prefer email, or the form below not working? Contact us at support@doesitreproduce.com.
Reproduction footprint
claude-opus-4-8Measured resources invested to assess this paper — sanitised (machine class only, no job ids/paths). Compute = HPC accounting (SLURM); tokens = the AI agent's session.