Charlie Charlie·Biodata – Bioinformatics
Frequently asked questions — the journey, the results, the trust

Frequently asked questions — Charlie Bioinformatics

Charlie helps you explore and interpret gene expression data without writing any code. These answers follow the thread of your discovery of the application: where your data starts, what you can do with it at each step of the journey, what the results are worth, and how far you can trust it.

1What types of data can I analyze?

Charlie works from an expression matrix: a table where genes appear as rows and your samples as columns. Two broad families of data are supported end to end — DNA microarrays (microarray), whose values are already on a log scale, and already-normalized RNA-seq (in CPM, TPM or FPKM).

You can also load RNA-seq raw counts. Charlie accepts them and prepares them properly for exploration (principal component analysis, heatmaps, clustering). Differential expression analysis on raw counts, however, remains exploratory: the reference statistical method for this case — a negative binomial model, such as DESeq2 — is under development. Charlie flags this before you launch the analysis.

The table below reads row by row: the type of file you have on hand, the scale of its values, the processing Charlie applies to it automatically, and the analyses that are then open to you.

Your dataValue scaleWhat Charlie appliesWhat you can do
DNA microarray (microarray)log2nothing: the values are already preparedExploration and differential expression analysis (limma by default, Welch optional)
Normalized RNA-seq (CPM, TPM, FPKM)linear or logconversion to log2 if the values are linearExploration and differential expression analysis (limma by default, Welch optional)
RNA-seq raw countslinearcorrects for sequencing depth (CPM), then converts to log2Reliable exploration; exploratory differential expression analysis (DESeq2 soon)
Sequencing files (FASTQ)Not supported

All of these data measure the same thing — gene expression, that is, RNA. Microarray and RNA-seq differ only in how they measure it. The phrase “already normalized” refers to the sequencing-depth correction specific to RNA-seq: a more deeply sequenced sample gives higher values everywhere without any gene truly being more expressed, and CPM, TPM or FPKM correct this purely technical bias. Since a microarray does not sequence, this notion does not apply to it.

A final word on the term “raw,” which covers two very different realities. Raw counts are already a table of genes and samples, simply not yet corrected for sequencing depth: Charlie accepts them. Sequencing files (FASTQ) are something else entirely — the reads that come out of the sequencer, well upstream of any table. Charlie does not process them: it always starts from an already-assembled expression matrix.

2Where does the data come from: my own files or a public database?

You can work from your own files or from a public dataset. In the first case, you import a table from your computer, in Excel, CSV or TSV format. In the second, you simply provide a GEO identifier (of the form GSE…): Charlie then retrieves the dataset directly from the public NCBI GEO database, without your having to download it yourself.

Current limitation — GEO import

Automatic retrieval works for DNA microarrays (microarray). For RNA-seq studies, GEO does not publish the values in the standard table that Charlie can read, but in supplementary files specific to each study. Charlie therefore cannot load them from the identifier alone — it flags this rather than leaving you with an empty project. What to do: retrieve the expression matrix from the study's GEO page, then import it as a file. Once imported, it is analyzed exactly like any other dataset.

Each project displays its origin and main characteristics at the top — the study title, the number of samples and genes, the detected scale, and, for a GEO dataset, its accession and platform identifiers. A dataset that has already been imported can also be reused for a new project, without reimporting it.

3How does an analysis unfold, from start to finish?

Charlie organizes the work into five tabs, which follow the natural order of an analysis.

It all begins with the Data tab, where you prepare your dataset: Charlie recognizes your genes there, checks the scale of the measurements, lets you define your comparison groups and browse a preview of your variables. Next comes Analyses, where you build your visualizations — principal components, heatmaps, volcano — as steps that you chain together over the course of your investigation. The genes that catch your attention, you gather into the Basket. From this basket, the Enrichment tab brings out the over-represented biological functions and pathways. Finally, Bibliography, coming soon, will link your genes to the scientific literature.

4What can I do in the “Data” tab?

The Data tab brings together everything that prepares and describes your dataset before analysis, in three panels.

The first, Data preparation, is its heart. There Charlie recognizes your genes (see the next question), then lets you discard the identifiers it could not annotate and the columns that are not genes, filter out missing values, and — if quality control suggests it — normalize the samples to make them comparable. Each time, Charlie offers a recommendation, but the decision is yours.

The second panel lets you create your own groups of samples from your variables (by treatment, by condition…), in order to prepare the comparisons in the Analyses tab.

The third, Data overview, gives an immediate overview of it: an excerpt of the matrix, a summary of the detected categorical variables (treatment, source, etc.), and a ranking of the fifty most variable genes — a first look at what distinguishes your samples, even before you have run any analysis.

5What do I gain from recognizing my genes (annotation)?

An expression file rarely contains readable gene names: most often, they are probe numbers (for example ILMN_1802380) or database identifiers (Entrez, Ensembl). Matching them one by one to gene names is a long, error-prone task, all the more so because you have to account for names that have changed over time.

Charlie handles this automatically. On import, it recognizes the type of your identifiers, translates them into gene names, and updates those that have become obsolete to the current nomenclature. You thus get a dataset ready to analyze, whose genes bear their current name — without having written a line of code or consulted a lookup table.

Above all, the result is presented to you unambiguously. The “Annotation” banner shows the share of genes recognized (for example “8,763 out of 9,980”), the source of the annotation, and the list of identifiers that could not be matched — set aside from the analyses rather than wrongly counted. So you always know what Charlie recognized and what it left out.

6For which species does Charlie recognize my genes?

Charlie automatically annotates the genes of nine commonly studied species: human, mouse, rat, fruit fly, zebrafish, the worm C. elegans, baker's yeast, the model plant Arabidopsis and the bacterium E. coli. To do so, it combines several annotation sources, whose availability depends on the species. The table below summarizes the means used for each.

SpeciesIllumina arrayAnnotation from GEOTranslation of Entrez/Ensembl identifiersName updates
Humanorg.Hs.eg.db✅ HGNC
Mouseorg.Mm.eg.db✅ MGI
Ratorg.Rn.eg.db✅ RGD
Fruit flyorg.Dm.eg.db✅ FlyBase
Zebrafishorg.Dr.eg.db✅ ZFIN
Worm (C. elegans)org.Ce.eg.db✅ WormBase
Bacterium (E. coli)org.EcK12.eg.db✅ NCBI / EcoCyc
Plant (Arabidopsis)org.At.tair.db
Yeastorg.Sc.sgd.db
Other species✅ (if available)

For these nine species, the translation of identifiers relies on the reference Bioconductor annotation databases (the “Translation” column), a guarantee of reliable gene names. Updating obsolete names relies on the nomenclature authority specific to each species — HGNC for human, FlyBase for the fruit fly, and so on. It is not available for yeast or for Arabidopsis, whose databases do not provide a synonym table; the loss is minor, since these species have few old names in circulation. Direct recognition of Illumina arrays, finally, applies only to human, mouse and rat, for lack of equivalent arrays for the other species.

If you work on a species not in this list, analysis is still possible: Charlie uses the annotation provided by GEO when it exists, otherwise your identifiers are kept as is and you can provide your own mapping file. In all cases, it clearly tells you when automatic annotation is not available, rather than letting you believe in a result.

7How does Charlie know which processing to apply to my data?

Before any analysis, Charlie detects the scale of your values: are they raw counts, normalized data, or values already on a log scale? This detection determines the processing applied. For example, for a principal component analysis, raw counts are first normalized then log-transformed, so that sequencing depth does not mask the biological signal; data that is already logarithmic, on the other hand, is left intact to avoid a double log transformation.

Everything Charlie detects and applies is displayed: the recognized scale, the transformation used, any genes that were set aside. You can check it and, if the automatic detection is wrong or remains uncertain, correct the scale yourself.

Depending on what Charlie detects, here is what it prepares and what you can do with it:

Charlie detects…It prepares / offers…What you can do
log2 (microarray, log-CPM)nothing — it is already readyall analyses, with confidence
raw countscorrects for sequencing depth (CPM) then converts to log2reliable exploration; exploratory differential expression analysis
normalized linear scale (TPM, FPKM)converts to log2all analyses, with confidence
ambiguous scaledoes not guess: no automatic log, and flags the uncertaintythe analysis runs as exploratory; you can specify the scale yourself
shifted distributions across samplesa check (boxplot + density) and a recommendationapply the suggested quantile normalization — except on raw counts, where a dedicated method is required

For any differential expression analysis, the result is a log2 fold-change, a multiple-testing correction is applied (Benjamini-Hochberg by default), and alerts flag groups that are too small.

8Which analyses can I run, and how do I launch them?

The Analyses tab covers the most common visualizations: sample quality control, principal component analysis and UMAP to visualize the structure of the data, heatmaps and correlations, distributions, and differential expression (volcano and MA-plot). To run one, you add a step and specify, depending on the analysis, the groups to compare or the parameters you want.

You can proceed in two ways. Either you build your analyses yourself, choosing each step and its settings. Or you rely on the Charlie assistant, which can propose an analysis based on your criteria and guide you (see below). In both cases, you are the one who validates and launches the computation.

9What does an analysis contain, concretely?

Each analysis takes the form of a step added to your report, which brings together in one place all the context of the result. You find there the plot itself, accompanied by the information that describes it; adjustment parameters that you can modify, and whose effect is sometimes reflected live on the figure; an explanatory caption, generated on demand, to interpret the result; the computation details, which recall the method and settings applied; any quality alerts; and a data preview of what was used to produce the plot. You thus see not only the result, but also how it was obtained.

These steps chain together freely: you accumulate them to conduct your investigation, from an overview toward the specific genes that interest you — which you then drop into the Basket.

10On a volcano, how do I choose the statistical test and the correction?

The volcano is the differential expression analysis: it answers the question “which genes are expressed differently between my two groups?”. Each gene is placed on it along two axes — the magnitude of the change (the log2 fold-change, horizontally) and the statistical strength of the result (the corrected p-value, vertically). A gene is declared “significant” only if it crosses both a magnitude threshold and a p-value threshold: a large but unreliable change, or a reliable but tiny result, is not enough. Two settings, gathered in the advanced options of the analysis, govern this verdict.

The statistical test adapts to the nature of your data. Charlie retains by default the moderated t-test (limma), the historical reference of expression analysis: rather than estimating the variability of each gene in isolation — which is very uncertain when samples are few — it consolidates this estimate by drawing on all the genes in the dataset. The gain is clear on small groups, the most frequent situation. The Welch test, more classic, remains available: on large groups, the two methods converge on the same result, so the choice then has almost no effect.

Your dataRecommended test
Microarray, or already-normalized RNA-seqlimma (by default) — all the more useful when the groups are small
The same data, with large groupslimma or Welch: equivalent results
RNA-seq raw countsdedicated method (DESeq2) coming — the t-test is only an approximation

On RNA-seq raw counts, neither of these two tests is ideal: the reference methods rely on a model designed for counts, such as DESeq2 or edgeR, still under development. Charlie then applies a t-test as an approximation and warns you that the result is exploratory.

The multiple-testing correction, for its part, is indispensable. A volcano tests thousands of genes at once; without correction, some of them would come out “significant” by pure chance. Charlie applies by default the Benjamini-Hochberg correction, which controls the false discovery rate — the right compromise for an analysis at this scale. The Bonferroni or Holm corrections, also available, are far stricter: designed to rule out the slightest false positive, they become too conservative over thousands of genes and risk erasing a signal that is nonetheless real. Reserve them for special cases.

Finally, it is the group size that governs the power of the analysis. With a single sample per group, no test is possible; with two to four, power remains very limited and the results are only indicative; only with larger groups do the conclusions become solid. Charlie flags these situations right where you configure the analysis, because small sample sizes combined with strict thresholds often lead to “no significant gene,” even when a weak signal really does exist.

Tip — when the volcano returns no significant gene

Before loosening the thresholds, check that the two groups compared really correspond to a genuine biological contrast, and not to an arbitrary grouping. No test and no correction will ever make a signal emerge from a comparison that carries none.

11How can the Charlie assistant help me?

Alongside your analyses, a conversational assistant knows your dataset and all of your results. You can ask it to explain a step, a choice or a figure in plain language, to comment on a result, or to propose an analysis matching what you are looking for — you are free to adjust it, validate it and launch it. Because it draws on your real data and not on generalities, its suggestions stay concrete and tailored to your dataset. The assistance is expanding over time: for now, defining the comparison groups, for example, is still up to you.

12How do I know if my analysis is reliable?

The reliability of an analysis depends first on your data and your choices; Charlie does not substitute for them, but it flags what deserves your attention, right where you configure the analysis. In particular, it alerts you when a group has too few samples for a solid comparison, when the scale of the data is ambiguous, or when it involves raw counts, for which differential expression analysis remains exploratory (the dedicated method, such as DESeq2, is under development).

The choice of statistical method also adapts to your data — the moderated t-test (limma) by default, the Welch test if you prefer. And if something escapes you, the assistant can explain a caveat or suggest a more cautious setting. The goal is not to decide for you, but to keep you from concluding on a fragile basis without knowing it.

13What are the basket and enrichment for?

Over the course of your analyses, you spot genes of interest — the most strongly differential, for example. You gather them in the Basket, which becomes your working list. The Enrichment tab then draws on this list to answer a fundamental question: do these genes share a function, a pathway or a biological process? Charlie queries the major knowledge bases — Gene Ontology, KEGG, Reactome, among others — and highlights the significantly over-represented terms, in order to move from a simple gene list to a biological interpretation.

14Can I trust the results?

Charlie is designed so that you can judge for yourself, rather than granting blind trust. Three principles guide it.

The first is transparency: every decision made on your data — the detected scale, the transformation applied, the discarded genes, the quality alerts — is displayed and modifiable. Nothing happens silently.

The second is explanation: the built-in assistant can explain a step, a choice or a result to you in plain language, and draw your attention to interpretation pitfalls.

The third is validation on real data: Charlie's methods are tested against published datasets, whose biology is known, in order to verify that they properly recover the expected signals (see the next question).

A point of honesty, finally: Charlie reduces the risk of silent error and flags its limits, but it does not replace your scientific judgment. For a publication, review by an expert remains recommended.

15How do you know that RNA-seq processing is reliable?

We regularly test Charlie against a set of published datasets, whose biological response is known in advance, and we verify that it recovers the right signals — not merely that the computation runs. Two studies serve as references today: one in human (airway cells treated with dexamethasone), the other in the fruit fly (knockdown of the Pasilla gene).

On each, we verify for example that the expected groups separate well after data preparation, that sequencing depth no longer dominates the analysis, and that the expected genes come out in the right direction — such as CRISPLD2, induced by dexamethasone in the human study, or the Pasilla gene itself, repressed in the study where it was precisely knocked down.

Two important clarifications. This validation covers a sample of reference datasets (two today, more to come), not “all RNA-seq”: it attests to the reliability of the method, not the correctness of a particular analysis run on your own data. Moreover, it confirms that the biology comes out correctly, but does not aim for exact numerical agreement with a dedicated RNA-seq method (DESeq2), still under development.

Charlie · Biodata – Bioinformatics — gene expression analysis Your data → exploration → biological interpretation