AI data-analysis assistants · Compare tools
Claude, Gemini or Copilot for statistical analysis: what each can do, and how to check the result
All three can analyse a spreadsheet. Pick the one where your data already live, tell it your design, and rerun its code before a number goes into a paper. Features from each assistant's own help pages, evaluations and a checklist.
On this page
Disclosure. Licklider makes SciGround, one of the options on this page. Options are grouped by the job they do rather than ranked, and each statement about a product names its source and the date we checked it.
Quick answer. Claude, Gemini and Copilot in Excel can all analyse a spreadsheet you give them, so choose the one that sits where your data already are: Copilot in Excel or Claude for Excel if the data live in an Excel workbook, Gemini in Google Sheets if they live there, Claude if you want to upload files and get back a script or report. For a number that goes into a paper, the choice of assistant matters less than two habits: tell it your design (what one row is, how many animals, which rows belong together) and rerun the code it used in R or Python. In a constructed example below with no real treatment effect, counting every cell as n gives a false positive, p = 0.013; counting each mouse once gives p = 0.55; with 3 mice per group, read that as “not settled”, and add animals to settle it. In simulations of this design, counting cells gave a false positive in 59% of runs. Already have a p-value from an assistant? Start with the checklist.
Terms used below. Code execution: the assistant writes a program and runs it on your file, instead of estimating numbers in text. n: the number of independent units in the test, usually animals rather than cells. Welch’s t-test: compares two group means without assuming equal spread; the default this site recommends. Welch’s ANOVA: the same idea for three or more groups. SD: standard deviation, the typical distance of values from their mean. Degrees of freedom (df): a number printed with the test that reflects how much independent data went in. False positive: a “significant” result when there is no real difference. Effect size: how large the difference is, for example in the outcome’s units. Confidence interval (CI): the range of effects compatible with the data. Multiple-comparison correction: an adjustment for running several tests. Mixed model: a model that keeps every cell but knows which animal it came from. MCP: the protocol that lets an assistant use an outside tool.
What each assistant can do with your data
Each row comes from the product’s own help page, checked on 11 November 2026. Features, plans and limits change; follow the link before you rely on one.
| Assistant | What its help page says it does with data | Where you can see the code | Basis |
|---|---|---|---|
| Claude (claude.ai, desktop and mobile apps) | Runs code in a sandboxed container on files you upload; with “code execution and file creation” switched on it can “perform advanced analyses on uploaded data” and produce reports with charts; it can create Python scripts, process CSV and TSV files, build machine learning models and “download and install packages from approved package managers” when network access is on. Available on Free, Pro, Max, Ultra, Team and Enterprise plans; up to 30 MB per file for this feature | Ask it to save the analysis script as a file and download it | Create and edit files with Claude; upload limits |
| Gemini (Gemini web app) | Reads uploaded spreadsheets and other files “to get answers, summaries, and insights” and can “create a chart based on your uploaded spreadsheet(s)”; up to 10 files per prompt, 100 MB each | Gemini can “export code to developer tools like Google Colab and Replit”; or ask it for the code and rerun it | Upload & analyze files in Gemini Apps; export responses |
| Gemini in Google Sheets | Creates tables and formulas, generates “data analysis and insights” and builds charts; needs an eligible Google Workspace or Google AI plan | Formulas appear in the sheet, and “Show code” shows the “code used to generate the output” | Collaborate with Gemini in Google Sheets |
| Claude for Excel (add-in for Excel on Mac and Windows; part of Claude for Microsoft 365) | Works in the workbook itself; Anthropic announced that “Claude for Excel, PowerPoint, and Word are generally available” and that “All Mac and Windows users on paid plans can access Claude for Microsoft 365” | Not described on that page; ask it to write formulas into cells or to show the code it used | Anthropic announcement |
| Copilot in Excel (Excel for Microsoft 365) | Builds and edits workbooks with “Excel tools like tables, charts, PivotTables, and formulas”, and “your content stays editable”; for questions about the data it “uses Python-based analysis”, and advanced analysis mode “opens a new sheet and runs Python code”. Copilot in Excel runs on Windows, Mac, the web, iPad, iPhone and Android, and is available only if your Microsoft 365 subscription or organisation includes it. The Python it uses is Python in Excel, which needs a Microsoft 365 licence with the desktop apps (“Free consumer and perpetual consumer licenses don’t support Python in Excel”) and is not available in Excel for iPad, iPhone or Android | The Python can be inserted as a refreshable Python cell you can read and edit | Get started with Copilot in Excel; direct answers to data analysis questions; Python in Excel availability |
None of these pages promises that the analysis fits your experiment. The assistant sees columns, not how the samples were collected, so the design has to come from you.
What published evaluations found
Researchers have tested these assistants on statistics tasks with published answers. The results are encouraging for choosing a test from a clear description, and they show where to look for errors.
| Evaluation | What was tested | Result |
|---|---|---|
| Sebo and Wang 2026, Internal and Emergency Medicine | ChatGPT-5, Claude (version not stated) and DeepSeek on 32 tutorial examples, each run twice: name the test, then write Stata commands; no data were analysed | Test named correctly in all 32 examples in both rounds; commands correct or acceptable in 87.5% to 96.9% (Claude 93.8% and 96.9%); errors that could change the conclusion in at most 12.5% of any model-and-round combination |
| Paolella and Tadinada 2026, Cureus | ChatGPT-5.5, Gemini 3.5 Flash, Copilot and Grok 4.3 (free versions) recommending a test from a description of each of 40 published healthcare studies; no data were analysed | Matched the study’s own test: Copilot and Grok 34 of 40, Gemini 32, ChatGPT 30 |
| Ruta et al. 2025, Journal of Medical Internet Research | GPT-4 running Python on a real dataset, with prompts of increasing detail | Test statistics and p-values matched the expected ones in 32.5% of attempts with a basic prompt, 81.3% when the prompt added cleaning steps and assumption checks, and 92.5% when it also recommended the test |
Only Ruta and colleagues gave the model real data, and none of the studies tested Claude, Gemini and Copilot side by side on the same tasks; no study we found varied both the assistant and the prompt, so comparisons across assistants are indirect. Two lessons still follow. First, a clear description gets a good recommendation: every task in these studies described the design for the model. Second, the remaining errors were in the test choice, the code and the settings; in Ruta’s study, adding cleaning steps and assumption checks to the prompt raised accuracy from 32.5% to 81.3%, and naming the test raised it to 92.5%. The studies were published in 2025 and 2026, and some did not state model versions; a newer version may do better or differently, so run the checks below whichever you use.
Worked check: the error that no prompt about columns will catch
A common lab design: three mice per group, 20 cells measured in each mouse. The constructed data below have no real treatment effect; mice differ from each other as much as cells within a mouse do (mouse SD = cell SD = 1). This dataset was chosen from simulated ones to make the contrast visible; the simulation below shows how often it happens. Stored code: cells.csv, worked_check.py, worked_check.R and their output.
| Analysis | n per group | t | df | p |
|---|---|---|---|---|
| Every cell as a separate observation | 60 | −2.53 | 117.7 | 0.013 |
| One mean per mouse (the mouse is the unit) | 3 | −0.64 | 3.91 | 0.55 |
Both rows use Welch’s t-test (treated minus control). An assistant handed a table with a value column and a group column has no way to know that 20 rows share a mouse unless a mouse column exists and you tell it what it means. In 10,000 simulated experiments with this design and no real effect, counting cells as n gave a “significant” result in 58.8% of runs; one mean per mouse gave 3.5% (simulation.py, output). The fix takes one sentence in the prompt, shown in step 1 of the checklist. Two checks on any output: a df near your number of cells (117.7 here) rather than your number of animals means cells were counted; and with 3 mice per group, p = 0.55 does not show there is no effect, only that this study cannot tell either way (report the confidence interval; more animals, not more cells, would settle it).
For a response letter: “We counted n as mice (n = 3 per group), not cells; each mouse’s cells were averaged before Welch’s t-test.”
import pandas as pd
from scipy import stats
d = pd.read_csv("cells.csv") # columns: group, mouse, value (rename to yours)
m = d.groupby(["group", "mouse"], as_index=False).value.mean()
mc, mt = (m[m.group == g].value for g in ("control", "treated"))
res = stats.ttest_ind(mt, mc, equal_var=False) # Welch's t-test on mouse means
print(res, res.confidence_interval()) # t, p, df and the 95% confidence interval
d <- read.csv("cells.csv")
m <- aggregate(value ~ group + mouse, data = d, FUN = mean)
t.test(value ~ factor(group, levels = c("treated", "control")), data = m) # Welch by default
If your design has several cells per animal and you want to use every cell, a mixed model is the alternative; nested data: average per animal or fit a mixed model? shows when each fits.
Which assistant for which job
| You need to… | A good fit | Why |
|---|---|---|
| Explore data that already sit in an Excel workbook | Copilot in Excel or Claude for Excel | Both work on the workbook; Copilot’s Python can go into a cell you can read |
| Explore data in Google Sheets | Gemini in Google Sheets | Works in the sheet; formulas stay visible |
| Upload several files and get a script, a report or charts back | Claude with code execution and file creation | Runs code on the files and can return the script as a file |
| Produce a result for a paper | R or Python, with the code saved, whichever assistant drafted it | Free, rerunnable and citable by version |
| Check that an AI-produced analysis supports the claim you want to make | SciGround (our product), used inside ChatGPT or Claude | Verified results for its supported analyses only; contingency tables, Kruskal–Wallis, multi-factor designs and mixed models are not covered (limits) |
What SciGround adds, and where it stops. SciGround connects to ChatGPT (web) and Claude (web and desktop, not the mobile app) through MCP (use with your AI); it does not connect to Gemini or Copilot. For its supported analyses, it runs the standard methods using established libraries with versions and settings recorded, re-verifies the result independently and attaches the claim the result supports. Exploration in the chat, other answers and analyses outside its workflows stay unverified, so the checklist below still applies to them.
Use any AI assistant safely for statistics: a checklist
Copy the prompts and fill in the brackets. Before you upload anything, check your institution’s rules for unpublished or identifiable data and the data settings of your account; Nature Portfolio, for example, states that “manuscripts, peer review reports, and sensitive data must not be shared with unsecured or public AI systems”. If you cannot upload the data, have the assistant draft code on a made-up sample and run it yourself.
- Give the design, not just the columns. “Each row is one [cell]; the
mousecolumn says which animal it came from; [3] mice per group; [groups are independent / both conditions were measured in each mouse, so paired within mouse]. Analyse with the mouse as the unit.” With three or more groups, say so and ask for one overall test. If your export has no animal column, add it from your notebook or plate map first; if you cannot recover which animal each cell came from, no test on those rows can use the animal as the unit, so say so rather than reporting a cell-level p-value. Read what counts as n if you are unsure which unit applies. - Decide the test yourself, then name it. Use a guide or the test chooser, then write, for example: “Run [Welch’s t-test (two groups) / a paired t-test on mouse means / Welch’s ANOVA (three or more groups)], two-sided. Name the exact function and every default argument you rely on.” In Ruta’s study, accuracy rose with each step of prompt detail and was highest (92.5%) when the prompt also recommended the test.
- Get the code. In Copilot, type “Enter advanced analysis mode” and insert the Python as a cell; in Claude, ask for the script as a file; in Gemini in Google Sheets, use “Show code”; in the Gemini web app, export the code to Colab or ask for it. If you cannot get the code that produced a number, treat that number as unverified.
- Check the rows. “How many rows went in, how many were analysed, and were any removed, imputed or recoded?” Compare with your own count.
- Rerun the code yourself in R or Python (
pip install pandas scipyfor the Python above) and compare every number. If they differ, find the setting that differs, report the number from the analysis you can justify, and keep the code with your data. How to check an AI assistant’s statistical analysis gives prompts for each step. - Ask for an effect size and a confidence interval, and decide any multiple-comparison correction before you look (which correction to use).
- Report the software and versions that produced the final numbers, and describe the assistant’s role as your journal asks. The ICMJE recommendations ask authors to describe AI use in data collection or analysis in the Methods; describing an assistant’s role in a paper has wording.
When to choose something else
- Choose R or Python directly when you want full control of every setting, or when the design is nested, repeated or multi-factor and you will need a mixed model anyway.
- Choose a menu-based package such as GraphPad Prism, JASP or jamovi when you prefer menus to code or need publication graphs (Prism alternatives compares them).
- Choose the assistant that sits where your data are for exploration, code drafts and explanations, and rerun anything that matters.
- Choose SciGround when you already work in ChatGPT or Claude, your analysis is one of its supported workflows, and you need the result and the claim checked and shareable.
How we compared
- Sources: each product’s own help page, checked on 11 November 2026 (Claude Help Center; Gemini Apps Help; Google Docs Editors Help; Microsoft Support), and three published evaluations whose models (where stated) and publication years are given above.
- Our reproducible check: constructed data with stored Python and R code, and a Python simulation. It tests the analysis choices that generated code makes, not any product.
- No hands-on testing of Claude, Gemini, Copilot or any other product was done. Plans, limits and features are quoted from the help pages on the date above.
- Conflict of interest: Licklider makes SciGround.
Check any statement against its linked source and date.
Questions
Which AI is best for statistics? The published comparisons point in different directions and tested different models (some without stating versions): in one, Copilot and Grok matched the published test most often; in another, ChatGPT-5, Claude and a third model all named the right test every time (Gemini and Copilot were not in that study). A clear description of your design and a rerun of the code matter more than the brand.
Can Claude do my statistical analysis? It can run code on an uploaded spreadsheet and return the script. Whether the result is right depends on telling it your design and rerunning the code, as for any assistant.
Can I trust the p-value an assistant gives me? Only after you have the code that produced it and have rerun it with the right unit of analysis. In the worked check, the same constructed data, with no real effect, give p = 0.013 or p = 0.55 depending on whether cells or mice are counted; the second is not proof of no effect at 3 mice per group.
Is it allowed to use an AI assistant for the analysis in a paper? Policies differ, so check your journal’s policy. The ICMJE recommendations ask for a description in the Methods. Nature Portfolio’s policy lists recommending statistical tests as permitted with human oversight, verification and disclosure (Nature Portfolio AI policy, checked 11 November 2026).
References
- Sebo P, Wang T (2026). Evaluating the performance of ChatGPT-5, Claude, and DeepSeek for statistical analysis in medicine. Internal and Emergency Medicine. doi:10.1007/s11739-026-04291-4
- Paolella M, Tadinada A (2026). Evaluating the accuracy of large language models in selecting appropriate statistical tests for healthcare research. Cureus. doi:10.7759/cureus.111768
- Ruta MR, Gaidici T, Irwin C, Lifshitz J (2025). ChatGPT for univariate statistics: validation of AI-assisted data analysis in healthcare research. Journal of Medical Internet Research 27:e63550. doi:10.2196/63550
- International Committee of Medical Journal Editors. Defining the role of authors and contributors (Artificial Intelligence-Assisted Technology). icmje.org (checked 11 November 2026)
- Nature Portfolio. Editorial policies: Artificial Intelligence. nature.com (checked 11 November 2026)
Changes
- 11 November 2026: first published.
Claude, Gemini, Google Sheets, Microsoft Copilot, Excel, ChatGPT, GraphPad Prism, JASP, jamovi and Python are names of their owners’ products. Licklider is not affiliated with Anthropic, Google, Microsoft, OpenAI, GraphPad, the JASP team, the jamovi project or the Python Software Foundation.
How this page was made
- Written and published by Licklider, which makes SciGround, one of the options compared here.
- Statements about other products come from their own public help pages, checked on 11 November 2026, and from published evaluations whose models (where stated) and publication years are given in the text. No hands-on testing of any product was done.
- The worked check uses constructed data and stored code (Python 3.13 with SciPy 1.18.1; R 4.3.3); both languages print the same numbers. The simulation was run in Python.
- Separate review passes checked the statistics, the citations, the product and comparative statements, and readability before publication.