scv.utils.merge show less number of Cell barcode and change obs_names
See original GitHub issueHi,
I have two samples data sets and ran velocyto each. I am trying to use scv.utils.merge(1st_adata, 2nd_adata) to merge two data sets. After scv.utils.merge, less number of cells and changed obs_names as well. It seems n_vars are kept while n_obs is changed. Is there any way to merge two sets without loss? (e.g. 1st set = (n_obs × n_vars = 9206 × 55421), 2nd set = (n_obs × n_vars = 8941 × 55421), merged set = (n_obs × n_vars = 18147 × 55421))
1st data
adata
AnnData object with n_obs × n_vars = 9206 × 55421
var: ‘Accession’, ‘Chromosome’, ‘End’, ‘Start’, ‘Strand’
layers: ‘ambiguous’, ‘matrix’, ‘spliced’, ‘unspliced’
adata.obs_names
Index([‘possorted_genome_bam_T851Q:AAACCCAAGGCTCTAT’,
‘possorted_genome_bam_T851Q:AAACCCAAGTGACACG’,
…
‘possorted_genome_bam_T851Q:TTTGTTGTCGAACGCC’],
dtype=‘object’, length=9206)`
2nd data
adata_2
AnnData object with n_obs × n_vars = 8941 × 55421
var: ‘Accession’, ‘Chromosome’, ‘End’, ‘Start’, ‘Strand’
layers: ‘ambiguous’, ‘matrix’, ‘spliced’, ‘unspliced’
adata_2.obs_names
Index([‘possorted_genome_bam_OB274:AAACCCAGTAGTCTGT’,
‘possorted_genome_bam_OB274:AAACCCAGTCGGCACT’,
…
‘possorted_genome_bam_OB274:TTTGTTGTCTCGCTCA’],
dtype=‘object’, length=8941)’
merge two AnnData
merged_adata = scv.utils.merge(adata, adata_2)
merged_adata
AnnData object with n_obs × n_vars = 31 × 55421
obs: ‘initial_size_unspliced’, ‘initial_size_spliced’, ‘initial_size’
var: ‘Accession’, ‘Chromosome’, ‘End’, ‘Start’, ‘Strand’
layers: ‘ambiguous’, ‘matrix’, ‘spliced’, ‘unspliced’’
check 2nd data obs names again
adata_2.obs_names
Index([‘AAACCCAGTAGTCTGT’, ‘AAACCCAGTCGGCACT’, ‘AAACCCAGTTAGGCTT’,
…
‘TTTGTTGTCTCGCTCA’], dtype=‘object’, length=8941)’
Issue Analytics
- State:
- Created 3 years ago
- Comments:14 (8 by maintainers)
In that case, you wouldn’t want to merge but to concatenate the two datasets, which can be done with
adata = adata1.concatenate(adata2)
.Great to hear, that it got resolved. Will need to add some informative warning in
anndata.concatenate
.