[e72cf6]: / __pycache__ / dataloader.cpython-37.pyc

Download this file

109 lines (109 with data), 8.1 kB

B

ҚÇbÍ7ã@sÎddlZddlZddlmZddlZddlZddlZ	ddl
mZmZddl
mZddl
mZddlZddlZddlZdd„Zdd	„Zd
d„Zdd
d„Zdd„Zddd„Zdd„Zdd„Zddd„Zdd„ZdS)éN)Úmean_squared_error)Ú
csc_matrixÚ
csr_matrix)Útrain_test_split)Úhstackc	Cst |¡}t |jj¡dk}t |jj¡dk}|dd…|f ¡}|dd…|f ¡}|jd|_|jd|_tj	 |¡}tj	 |¡}t
jj|ddt
j 
|¡t
j |¡|jdj}|dd…|f ¡}t
jj|ddt
j 
|¡t
j |¡|jdj}|dd…|f ¡}||fS)NÚGEXÚATACÚcountsgˆÃ@)Ú
target_sumÚhighly_variable)ÚadÚ	read_h5adÚnpÚarrayÚvarÚ
feature_typesÚcopyÚlayersÚXÚAnnDataÚscÚppÚnormalize_totalÚlog1pÚhighly_variable_genesÚvalues)	Ú
mod_file_pathÚadataÚfeature_gex_indexZfeature_atac_indexÚ
adata_mod1Ú
adata_mod2Úadata_mod1_originalÚadata_mod2_originalÚindex©r$ú<C:\Users\Xin\Desktop\mscETM\Demo code_all_data\dataloader.pyÚload_nips_dataset_gex_atacs(
r&c
CsÚt |¡}t |jj¡dk}t |jj¡dk}|dd…|f ¡}|dd…|f ¡}~t ¡g}xPt	|j
dƒD]>}|jd||d|krœtdƒqt| t
|d|ƒ¡qtW|dd…|f ¡}| ¡}	|	jd|	_~| ¡}
|
jd|
_~t ¡tj |	¡}tj |
¡}tjj|	dd	tj |	¡tj |	¡|	jd
j}tj |¡}	|	dd…|f ¡}	~t ¡tjj|
dd	tj |
¡tj |
¡|
jd
j}tj |¡}
~t ¡|
dd…|f ¡}
|	|
fS)NrréZgene_idÚWarningZis_gene_codingr	gˆÃ@)r
r)rr
rrrrrÚgcÚcollectÚrangeÚshapeÚprintÚappendÚboolrrrrrrrrr)
rÚ
gene_encodingrrZfeature_adt_indexZgexZatacr#Úirr r!r"r$r$r%Úload_nips_dataset-sN

r2cCst |¡}t |¡}|jd|_tjj|ddtj |¡tj |¡|j	dj
}t |¡}|dd…|f}|j}|jd}tj||d}|jd|_tjj|ddtj |¡tj |¡|j	dj
}t |¡}|dd…|f}|j}|jd}tj||d}||fS)Nr	gˆÃ@)r
r)rÚobs)
rr
rrrrrrrrrr3r)Zmod1_file_pathZmod2_file_pathrr r#r3rr$r$r%Úload_datasetns.





r4Úbatchcsìt |j|j¡}tt |¡ƒ‰t ‡fdd„|Dƒ¡}|j}| |jdd|¡tj	|j
|d}|j}| |jdd|¡|j
}tj	||d}t | d¡dk¡ ¡}||}|j}tj	|j
|d}||}|j}tj	|j
|d}||fS)Ncsg|]}ˆ |¡‘qSr$)r#)Ú.0Úxs)Úunique_batchr$r%ú
<listcomp>•sz(prepare_nips_dataset.<locals>.<listcomp>r'Ú
batch_indices)rr3r)
rrr3rÚlistÚuniqueÚinsertr,rrrÚsumÚsqueeze)Z	adata_gexr Ú	batch_colÚbatch_indexr3rÚIndexr$)r8r%Úprepare_nips_datasets$rCc
Cs°|}|}t |j ¡¡}t |j ¡¡}t |jd¡}|| d¡dd…tjf}|| d¡dd…tjf}t |¡ 	¡}t |¡ 	¡}t |¡ 
tj¡}	~~~|||	|fS)Nr:r')rrrÚtodenser3r>ÚnewaxisÚtorchÚ
from_numpyÚfloatÚtoÚint64)
rr Útrain_adata_mod1Útrain_adata_mod2ÚX_mod1ÚX_mod2rAÚX_mod1_train_TÚX_mod2_train_TÚbatch_index_train_Tr$r$r%Údata_process_moETM°srRFc
s
t |jdj¡}tt |¡ƒ‰t ‡fdd„|Dƒ¡}t tˆƒdg¡}x|D]}||d7<qPW|| ¡}t	 
|¡ ¡ ¡}|j}| 
|jdd|¡tj|j|d}|j}| 
|jdd|¡tj|j|d}|dkrô|}	|}
|}|}n&|rþd}
nt|ƒ\}	}t|ƒ\}
}~~|	j}|	j}tj||d}	|j}|j}tj||d}|
j}|
j}tj||d}
|j}|j}tj||d}t |	j ¡¡}t |
j ¡¡}t |	jd¡}t |	jd¡}|| d¡dd…tjf}|| d¡dd…tjf}t	 
|¡ ¡ ¡}t	 
|¡ ¡ ¡}t	 
|¡ t	j¡ ¡}t	 
|¡ t	j¡ ¡}t |j ¡¡}t |j ¡¡}t |jd¡}|| d¡dd…tjf}|| d¡dd…tjf}t	 
|¡ ¡ ¡}t	 
|¡ ¡ ¡}t	 
|¡ t	j¡ ¡}~~~||||||||||f
S)NÚ	cell_typecsg|]}ˆ |¡‘qSr$)r#)r6r7)Úunique_cell_typer$r%r9Ész)data_process_moETM_OT.<locals>.<listcomp>r'Zcelltype_indices)rr3r:)rrr3rr;r<ÚzerosÚlenr>rFrGrHÚcudar=r,rrrrrDrErIrJ)rr Ú
test_ratioÚleave_one_batchrSZcell_type_propr1Zcell_type_prop_Tr3rKrLÚtest_adata_mod1Útest_adata_mod2ÚarrMrNrAZcelltype_indexrOrPrQZcelltype_index_train_TÚ
X_mod1_test_TÚ
X_mod2_test_TÚbatch_index_test_Tr$)rTr%Údata_process_moETM_OTÆst

r`cCsüddlm}ddlm}tjj|ddtj |¡|ƒ}t| 	|j
 ¡¡ƒ}|j}t
j||d}|ƒ}| 	|j
¡}|ƒ}| ¡}| 	|¡}|j}t
j||d}|}|j}|j
}t
j||d}|}	|	j}|	j
}t
j||d}	t |j
 ¡¡}
|	j
}|
||fS)Nr)ÚStandardScaler)ÚTfidfTransformergˆÃ@)r
)rr3)Úsklearn.preprocessingraZsklearn.feature_extraction.textrbrrrrrÚ
fit_transformrrDr3rrrr)rr rarbÚscalerrr3ÚtransformerrKrLZX_mod1_trainZX_mod2_trainr$r$r%Údata_process_SMILEs4
rgcCsŠ|}|j}|j}tj||d}|}|j}|j}tj||d}t |j ¡¡}t |j ¡¡}t |¡ 	¡}t |¡ 	¡}	||	g}
|||
fS)N)rr3)
r3rrrrrrDrFrGrH)rr rKr3rrLrMrNrOrPZ
Train_datar$r$r%Údata_process_scMMAsrhcCs|dkr|}|}|}|}n&|r$d}nt|ƒ\}}t|ƒ\}}~~|j}	|j}
tj|
|	d}|j}	|j}
tj|
|	d}|j}	|j}
tj|
|	d}|j}	|j}
tj|
|	d}t |j ¡¡}t |j ¡¡}t |jd¡}
|| d¡dd…tj	f}|| d¡dd…tj	f}t
 |¡ ¡ 
¡}t
 |¡ ¡ 
¡}t
 |
¡ t
j¡ 
¡}t |j ¡¡}t |j ¡¡}t |jd¡}
|| d¡dd…tj	f}|| d¡dd…tj	f}t
 |¡ ¡ 
¡}t
 |¡ ¡ 
¡}t
 |
¡ t
j¡ 
¡}~~~
||||||||fS)Nr')rr3r:)rr3rrrrrrDr>rErFrGrHrWrIrJ)rr rXrYrKrLrZr[r\r3rrMrNrArOrPrQr]r^r_r$r$r%Údata_process_coboltWsPric
Cs’|j}|j}t||gƒ}|j}|j}d|d<d|d<tj||fdd}tjt|ƒ|j|d}| 	¡t
j |¡}	|	dd…|	jd 
¡f ¡}	|	S)NzGene ExpressionZmodalityZPeaksr)Úaxis)rr3r)rrrÚpdÚconcatrrrr3Úvar_names_make_uniqueÚscviÚdataZorganize_multiome_anndatasÚargsortr)
rr Úx_mod1Úx_mod2ÚxZvar_mod1Zvar_mod2rZadata_pairedZ	adata_mvir$r$r%Údata_process_multiVI”srt)r5)NF)NF)ÚnumpyrrFÚsklearn.metricsrÚtimeÚanndatarÚscanpyrÚscipy.sparserrÚutilsrrÚpandasrkrnr)r&r2r4rCrRr`rgrhrirtr$r$r$r%Ú<module>s*A"
 
R)
=