Open aideenoneill opened 6 months ago
@aideenoneill For a typical single-cell data analysis, I think we usually re-normalize the combined datasets after merge to account for the library-size effects. This is why CellChat prefers the re-normalization.
However, if you perform your analysis such as differential expression analysis using the dataset-specific normalization, you can also use it in the CellChat analysis. This means that the data input depends on how you perform the basic analysis of the data.
Dear @sqjin,
Thank you very much for CellChat. I'd be grateful for your advice on normalisation when merging different datasets from which to then create a CellChat object.
I have two datasets, derived from the same experiment but containing very different cell types (stromal vs non-stromal). Not only are the cell types different from each other but they have undergone different processing to extract from the original tissue and have undergone sequencing to different depths (they were sequenced as a pool, and one dataset has fewer cells than the other because of a difference in frequency in the tissue).
Before creating my CellChat object, I merged the two datasets in Seurat, using merge() to create a single Seurat object. On performing the merge, I opted for PRESERVING previously-calculated normalisations, rather than merging and then re-normalising the combined datasets after merge. My logic was that because the two datasets contain very different cell types, it would make sense to preserve their normalisations relative to each other.
However, I could also make arguments the other way - that their differences are irrelevant to the analysis that CellChat is doing and that because CellChat requires normalized data, the combined dataset set should be re-normalised..
It would really helpful to get your advice on this question, based on the detail of how CellChat performs its calculations.
Thanks very much for any help you can give.