Simulation
[1]:
import scanpy as sc
import os
import pandas as pd
import numpy as np
import pickle as pkl
import matplotlib as mpl
import matplotlib.pyplot as plt
import scipy.stats
sc.settings.verbosity = 3 # verbosity: errors (0), warnings (1), info (2), hints (3)
sc.logging.print_versions()
sc.settings.n_jobs = 6
WARNING: If you miss a compact list, please try `print_header`!
-----
anndata 0.7.4
scanpy 1.6.0
sinfo 0.3.1
-----
PIL 7.2.0
anndata 0.7.4
backcall 0.2.0
cairo 1.19.1
cffi 1.14.2
colorama 0.4.3
cycler 0.10.0
cython_runtime NA
dateutil 2.8.1
decorator 4.4.2
get_version 2.1
h5py 2.10.0
igraph 0.8.2
importlib_metadata 1.7.0
ipykernel 5.3.4
ipython_genutils 0.2.0
jedi 0.17.2
joblib 0.16.0
kiwisolver 1.2.0
legacy_api_wrap 1.2
leidenalg 0.8.1
llvmlite 0.33.0+1.g022ab0f
matplotlib 3.3.1
mkl 2.3.0
mpl_toolkits NA
natsort 7.0.1
nt NA
ntsecuritycon NA
numba 0.50.1
numexpr 2.7.1
numpy 1.19.1
packaging 20.4
pandas 1.1.1
parso 0.7.0
pickleshare 0.7.5
pkg_resources NA
prompt_toolkit 3.0.7
pygments 2.6.1
pyparsing 2.4.7
pythoncom NA
pytz 2020.1
pywintypes NA
scanpy 1.6.0
scipy 1.5.2
setuptools_scm NA
sinfo 0.3.1
six 1.15.0
sklearn 0.23.2
sphinxcontrib NA
storemagic NA
tables 3.6.1
texttable 1.6.2
tornado 6.0.4
traitlets 4.3.3
wcwidth 0.2.5
win32api NA
win32com NA
win32security NA
zipp NA
zmq 19.0.1
-----
IPython 7.18.1
jupyter_client 6.1.6
jupyter_core 4.6.3
notebook 6.1.1
-----
Python 3.7.7 (default, May 6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)]
Windows-10-10.0.17763-SP0
12 logical CPU cores, Intel64 Family 6 Model 158 Stepping 10, GenuineIntel
-----
Session information updated at 2020-12-01 10:39
[2]:
genes = sum([[t + str(i) for i in range(20)] for t in ['Pro', 'PreX', 'PreY', 'MatureX', 'MatureY']], []) + \
sum([[t + str(i) for i in range(5)] for t in ['PreX_PreY', 'MatureX_MatureY']], []) + \
sum([[t + str(i) for i in range(5)] for t in ['Checkpoint']], []) + \
sum([[t + str(i) for i in range(15)] for t in ['Noninformative_high']], []) + \
sum([[t + str(i) for i in range(15)] for t in ['Noninformative_low']], []) + \
sum([[t + str(i) for i in range(15)] for t in ['Noninformative_mid']], []) + \
sum([[t + str(i) for i in range(10)] for t in ['GradientX', 'GradientY']], [])
[3]:
np.random.seed(0)
[4]:
high = 10.
low = 1.
df = pd.DataFrame(data=low, columns=['Pro', 'PreX', 'PreY', 'MatureX', 'MatureY', 'Checkpoint',
'GradientX', 'GradientY'],
index=genes)
df.Pro[df.index.str.contains("Pro")] = high
df.PreX[df.index.str.contains("PreX")] = high
df.PreY[df.index.str.contains("PreY")] = high
df.MatureX[df.index.str.contains("MatureX")] = high
df.MatureY[df.index.str.contains("MatureY")] = high
df.Checkpoint[df.index.str.contains("Checkpoint")] = high
df.GradientX[df.index.str.contains("GradientX")] = high
df.GradientY[df.index.str.contains("GradientY")] = high
df.loc[df.index.str.contains("Noninformative_high"), :] = high
df.loc[df.index.str.contains("Noninformative_mid"), :] = 5.
[5]:
df.style
[5]:
| Pro | PreX | PreY | MatureX | MatureY | Checkpoint | GradientX | GradientY | |
|---|---|---|---|---|---|---|---|---|
| Pro0 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro1 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro2 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro3 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro4 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro5 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro6 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro7 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro8 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro9 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro10 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro11 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro12 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro13 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro14 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro15 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro16 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro17 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro18 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Pro19 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX0 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX1 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX2 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX3 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX4 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX5 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX6 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX7 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX8 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX9 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX10 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX11 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX12 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX13 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX14 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX15 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX16 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX17 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX18 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX19 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY0 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY1 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY2 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY3 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY4 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY5 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY6 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY7 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY8 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY9 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY10 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY11 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY12 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY13 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY14 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY15 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY16 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY17 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY18 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreY19 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX0 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX1 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX2 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX3 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX4 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX5 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX6 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX7 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX8 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX9 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX10 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX11 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX12 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX13 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX14 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX15 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX16 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX17 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX18 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX19 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY0 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY1 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY2 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY3 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY4 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY5 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY6 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY7 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY8 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY9 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY10 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY11 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY12 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY13 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY14 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY15 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY16 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY17 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY18 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureY19 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX_PreY0 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX_PreY1 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX_PreY2 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX_PreY3 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| PreX_PreY4 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX_MatureY0 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX_MatureY1 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX_MatureY2 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX_MatureY3 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| MatureX_MatureY4 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 10.000000 | 1.000000 | 1.000000 | 1.000000 |
| Checkpoint0 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 |
| Checkpoint1 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 |
| Checkpoint2 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 |
| Checkpoint3 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 |
| Checkpoint4 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 | 1.000000 |
| Noninformative_high0 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high1 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high2 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high3 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high4 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high5 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high6 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high7 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high8 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high9 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high10 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high11 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high12 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high13 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_high14 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 | 10.000000 |
| Noninformative_low0 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low1 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low2 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low3 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low4 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low5 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low6 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low7 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low8 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low9 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low10 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low11 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low12 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low13 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_low14 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 |
| Noninformative_mid0 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid1 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid2 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid3 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid4 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid5 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid6 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid7 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid8 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid9 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid10 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid11 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid12 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid13 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| Noninformative_mid14 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 | 5.000000 |
| GradientX0 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX1 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX2 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX3 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX4 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX5 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX6 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX7 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX8 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientX9 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 | 1.000000 |
| GradientY0 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY1 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY2 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY3 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY4 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY5 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY6 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY7 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY8 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
| GradientY9 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 10.000000 |
[6]:
X = np.vstack([np.random.uniform(-0.05, 1., [800, 1]), np.random.uniform(1., 2.1, [1200, 1])])
Y = np.vstack([np.random.uniform(-0.05, 1., [800, 1]), np.random.uniform(1., 2.1, [1200, 1])])
[7]:
dispersion = np.vstack([(1. - np.clip(np.maximum(X, 0.) * 1.0, 0., 1.)) * df.Pro.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(X - 1.) * 1.2, 0., 1.)) * df.PreX.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(np.minimum(X, 2.) - 2.), 0., 1.)) * df.MatureX.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(X - 1.5) * 8., 0., 1.)) * df.Checkpoint.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(X - 1.5) * 16., 0., 1.)) * df.Checkpoint.values.reshape([1, -1]) + \
(np.clip(np.abs(X * 0.5), 0., 1.)) * df.GradientX.values.reshape([1, -1]),
(1. - np.clip(np.maximum(Y, 0.) * 1.0, 0., 1.)) * df.Pro.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(Y - 1.) * 1.2, 0., 1.)) * df.PreY.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(np.minimum(Y, 2.) - 2.), 0., 1.)) * df.MatureY.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(Y - 1.5) * 8., 0., 1.)) * df.Checkpoint.values.reshape([1, -1]) + \
(1. - np.clip(np.abs(Y - 1.5) * 16., 0., 1.)) * df.Checkpoint.values.reshape([1, -1]) + \
(np.clip(np.abs(Y * 0.5), 0., 1.)) * df.GradientY.values.reshape([1, -1])
])
dispersion.shape
[7]:
(4000, 180)
[8]:
label = []
for i in X:
label.append('Pro' if i < .5 else 'PreX' if i < 1.5 else 'MatureX')
for i in Y:
label.append('Pro' if i < .5 else 'PreY' if i < 1.5 else 'MatureY')
[9]:
theta = 10.
expression = np.random.poisson(np.random.gamma(dispersion / np.sum(dispersion, axis=1, keepdims=True) * 10000 / theta, theta))
expression.shape
[9]:
(4000, 180)
[10]:
adata = sc.AnnData(expression)
adata.var_names = df.index
adata.obs['label'] = label
[11]:
adata.obs['time'] = np.clip(X.squeeze().tolist() + Y.squeeze().tolist(), 0., 2.)
[12]:
adata.raw = adata
[13]:
sc.pp.normalize_total(adata, target_sum=1e4)
sc.pp.log1p(adata)
sc.pp.scale(adata, max_value=10)
normalizing counts per cell
finished ({time_passed})
[14]:
sc.settings.set_figure_params(dpi=80)
[15]:
plt.scatter(adata[:, 'PreX0'].X, adata[:, 'PreY1'].X)
C:\Users\SLiang3\Miniconda3\envs\scanpy37\lib\site-packages\anndata\_core\anndata.py:1094: FutureWarning: is_categorical is deprecated and will be removed in a future version. Use is_categorical_dtype instead
if not is_categorical(df_full[k]):
[15]:
<matplotlib.collections.PathCollection at 0x219ed226188>
[118]:
sc.tl.pca(adata, svd_solver='arpack')
sc.pl.pca(adata, color="label", size=10., frameon=False, title="")
sc.pl.pca(adata, color="label", size=10., frameon=False, legend_loc="", title="")
computing PCA
with n_comps=50
finished (0:00:00)
[17]:
sc.pl.pca_variance_ratio(adata, log=True)
[126]:
sc.pp.neighbors(adata, n_pcs=3)
sc.tl.umap(adata)
adata.obsm['X_umap'][:, 0] = -adata.obsm['X_umap'][:, 0]
adata.obsm['X_umap'][:, 1] = -adata.obsm['X_umap'][:, 1]
sc.pl.umap(adata, color=['label'], legend_loc=None, size=10., frameon=False, title="")
computing neighbors
using 'X_pca' with n_pcs = 3
finished: added to `.uns['neighbors']`
`.obsp['distances']`, distances for each pair of neighbors
`.obsp['connectivities']`, weighted adjacency matrix (0:00:00)
computing UMAP
finished: added
'X_umap', UMAP coordinates (adata.obsm) (0:00:05)
[87]:
import sys
sys.path.insert(0,'../marker-selection/')
import scmer
#4000: 62
model = scmer.UmapL1(w=1., lasso=.79e-2, ridge=0., n_pcs=5, perplexity=100., use_beta_in_Q=True,
n_threads=6, max_outer_iter=1)
model.fit(adata.X)
adata.var_names[model.w > 0.]
Calculating distance matrix and scaling factors...
Computing pairwise distances...
Using 6 threads...
Mean value of sigma: 0.514251
Done. Elapsed time: 15.72 seconds. Total: 15.72 seconds.
Creating model without batches...
Optimizing using OWLQN (because lasso is nonzero)...
0 loss (before this step): 4.80375337600708 Nonzero (after): 63 Elapsed time: 35.53 seconds. Total: 51.25 seconds.
Final loss: 3.48805570602417 Nonzero: 63 Elapsed time: 0.60 seconds. Total: 51.86 seconds.
[87]:
Index(['Pro0', 'Pro1', 'Pro2', 'Pro3', 'Pro4', 'Pro5', 'Pro6', 'Pro7', 'Pro8',
'Pro9', 'Pro10', 'Pro11', 'Pro12', 'Pro13', 'Pro14', 'Pro15', 'Pro16',
'Pro17', 'Pro18', 'Pro19', 'PreX0', 'PreX2', 'PreX4', 'PreX5', 'PreX6',
'PreX7', 'PreX9', 'PreX11', 'PreX13', 'PreX14', 'PreX16', 'PreX17',
'PreX18', 'PreY0', 'PreY1', 'PreY4', 'PreY5', 'PreY6', 'PreY8', 'PreY9',
'PreY11', 'PreY12', 'PreY13', 'PreY14', 'PreY15', 'PreY17', 'PreY18',
'PreY19', 'PreX_PreY0', 'PreX_PreY1', 'PreX_PreY2', 'PreX_PreY3',
'PreX_PreY4', 'MatureX_MatureY0', 'MatureX_MatureY1',
'MatureX_MatureY2', 'MatureX_MatureY3', 'MatureX_MatureY4',
'Checkpoint4', 'GradientX2', 'GradientX3', 'GradientX8', 'GradientY5'],
dtype='object')
[88]:
adata.var_names[model.get_mask(45)]
[88]:
Index(['Pro0', 'Pro1', 'Pro2', 'Pro3', 'Pro4', 'Pro5', 'Pro6', 'Pro7', 'Pro8',
'Pro9', 'Pro10', 'Pro11', 'Pro12', 'Pro13', 'Pro14', 'Pro15', 'Pro16',
'Pro17', 'Pro18', 'Pro19', 'PreX2', 'PreX5', 'PreX6', 'PreX7', 'PreX11',
'PreX13', 'PreX14', 'PreY6', 'PreY8', 'PreY15', 'PreY18', 'PreY19',
'PreX_PreY0', 'PreX_PreY1', 'PreX_PreY2', 'PreX_PreY3', 'PreX_PreY4',
'MatureX_MatureY0', 'MatureX_MatureY1', 'MatureX_MatureY2',
'Checkpoint4', 'GradientX2', 'GradientX3', 'GradientX8', 'GradientY5'],
dtype='object')
[ ]:
[129]:
sc.pl.umap(adata,
color=['Checkpoint0'],
ncols=3,
use_raw=False,
vmin=-1.5,
vmax=None,
legend_loc=None, size=10., color_map='inferno', frameon=False, title="")
[136]:
sc.pl.umap(adata,
color=['MatureX_MatureY0'],
ncols=3,
use_raw=False,
vmin=-1,
legend_loc=None, size=10., color_map='inferno', frameon=False, title="")
[134]:
sc.pl.umap(adata,
color=['GradientX5'],
ncols=3,
use_raw=False,
vmin=-1,
legend_loc=None, size=10., color_map='inferno', frameon=False, title="")
[135]:
sc.pl.umap(adata,
color=['Pro0'],
ncols=3,
use_raw=False,
vmin=-0.5,
legend_loc=None, size=10., color_map='inferno', frameon=False, title="")
Metrics
[93]:
adata.obs['label_l2'] = adata.obs['label'].astype(str)
mask = np.abs(adata.obs.time - 1.5) * 8. < 0.4
adata.obs['label_l2'][mask] = \
'checkpoint' + adata.obs['label_l2'][mask].str[-1]
C:\Users\SLiang3\Miniconda3\envs\scanpy37\lib\site-packages\ipykernel_launcher.py:4: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame
See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
after removing the cwd from sys.path.
[94]:
print(adata.obs.label.value_counts() / 4000)
print(adata.obs.label_l2.value_counts() / 4000)
PreY 0.24325
PreX 0.22425
Pro 0.21225
MatureX 0.16725
MatureY 0.15300
Name: label, dtype: float64
PreY 0.22925
PreX 0.21225
Pro 0.21225
MatureX 0.15375
MatureY 0.14025
checkpointY 0.02675
checkpointX 0.02550
Name: label_l2, dtype: float64
kNN
[95]:
import sklearn as skl
import scipy as sp
def knn_ri(X, y, n_neighbors=3):
#y_ = skl.neighbors.KNeighborsClassifier(n_neighbors=n_neighbors).fit(X, y).predict(X)
pdist = sp.spatial.distance.squareform(sp.spatial.distance.pdist(np.array(X)))
ind = np.argpartition(pdist, n_neighbors, 1)[:, 1:(n_neighbors + 1)] # smallest one is itself, discard
y_ = [y[ind[i, :]].sum() > n_neighbors / 2 for i in range(ind.shape[0])]
return "%.2f / %.2f" % (skl.metrics.precision_score(y_true=y, y_pred=y_), skl.metrics.recall_score(y_true=y, y_pred=y_))
#return y_
[96]:
from scipy.stats import pearsonr
corr_both = [pearsonr(adata.X[:, i], adata.obs.time.tolist())[0] for i in range(adata.shape[1])]
corr_X = [pearsonr(adata.X[:2000, i], adata.obs.time.tolist()[:2000])[0] for i in range(adata.shape[1])]
corr_Y = [pearsonr(adata.X[2000:, i], adata.obs.time.tolist()[2000:])[0] for i in range(adata.shape[1])]
corr_df = pd.DataFrame(data = {'both': adata.var_names[np.argsort(-np.abs(corr_both))],
'X': adata.var_names[np.argsort(-np.abs(corr_X))],
'Y': adata.var_names[np.argsort(-np.abs(corr_Y))]})
sc.tl.rank_genes_groups(adata, "label", method='wilcoxon')
deg_df = pd.DataFrame(adata.uns['rank_genes_groups']['names'])
ranking genes
C:\Users\SLiang3\Miniconda3\envs\scanpy37\lib\site-packages\anndata\_core\anndata.py:1192: FutureWarning: is_categorical is deprecated and will be removed in a future version. Use is_categorical_dtype instead
if is_string_dtype(df[key]) and not is_categorical(df[key])
... storing 'label_l2' as categorical
finished: added to `.uns['rank_genes_groups']`
'names', sorted np.recarray to be indexed by group ids
'scores', sorted np.recarray to be indexed by group ids
'logfoldchanges', sorted np.recarray to be indexed by group ids
'pvals', sorted np.recarray to be indexed by group ids
'pvals_adj', sorted np.recarray to be indexed by group ids (0:00:00)
[97]:
n_features = 50
for i in range(corr_df.shape[0]):
if len(set(corr_df.iloc[:i, ].values.reshape([-1]))) > n_features:
break
corr_features = list(set(corr_df.iloc[:i, ].values.reshape([-1])))
for i in range(deg_df.shape[0]):
if len(set(deg_df.iloc[:i, ].values.reshape([-1]))) > n_features:
break
deg_features = list(set(deg_df.iloc[:i, ].values.reshape([-1])))
[98]:
def calc_precision_df(X, y, adata, model, deg_features, corr_features):
return pd.DataFrame({label_name:
{'Original': knn_ri(adata.X, label),
'SCMER': knn_ri(adata.X[:, model.get_mask(n_features)], label),
'DEG': knn_ri(adata[:, deg_features].X, label),
'Correlation': knn_ri(adata[:, corr_features].X, label)
}
}
)
[99]:
label_name = 'checkpointX'
obs_name = 'label_l2'
label = adata.obs[obs_name] == label_name
precision_df = calc_precision_df(X, label, adata, model, deg_features, corr_features)
label_name = 'checkpointY'
obs_name = 'label_l2'
label = adata.obs[obs_name] == label_name
precision_df = precision_df.merge(calc_precision_df(X, label, adata, model, deg_features, corr_features),
left_index=True, right_index=True)
obs_name = 'label'
for label_name in ['Pro', 'PreX', 'PreY', 'MatureX', 'MatureY']:
label = adata.obs[obs_name] == label_name
precision_df = precision_df.merge(calc_precision_df(X, label, adata, model, deg_features, corr_features),
left_index=True, right_index=True)
C:\Users\SLiang3\Miniconda3\envs\scanpy37\lib\site-packages\anndata\_core\anndata.py:1094: FutureWarning: is_categorical is deprecated and will be removed in a future version. Use is_categorical_dtype instead
if not is_categorical(df_full[k]):
[100]:
precision_df.loc[['SCMER', 'DEG', 'Correlation']]
[100]:
| checkpointX | checkpointY | Pro | PreX | PreY | MatureX | MatureY | |
|---|---|---|---|---|---|---|---|
| SCMER | 0.82 / 0.68 | 0.87 / 0.67 | 0.97 / 0.96 | 0.95 / 0.96 | 0.94 / 0.94 | 0.95 / 0.96 | 0.94 / 0.93 |
| DEG | 0.61 / 0.34 | 0.73 / 0.40 | 0.94 / 0.95 | 0.94 / 0.93 | 0.95 / 0.94 | 0.94 / 0.95 | 0.95 / 0.96 |
| Correlation | 0.48 / 0.36 | 0.43 / 0.28 | 0.91 / 0.96 | 0.76 / 0.67 | 0.76 / 0.67 | 0.88 / 0.95 | 0.88 / 0.92 |
[33]:
corr_features
[33]:
['MatureX19',
'MatureX9',
'Pro7',
'Pro10',
'Pro18',
'MatureY2',
'Pro1',
'MatureY16',
'MatureX5',
'Pro0',
'MatureX0',
'MatureX18',
'MatureX16',
'MatureY14',
'Pro12',
'MatureY19',
'MatureX11',
'MatureX_MatureY4',
'MatureX12',
'MatureY4',
'Pro11',
'Pro3',
'MatureY5',
'Pro2',
'MatureX_MatureY1',
'Pro4',
'MatureX4',
'Pro9',
'MatureX8',
'MatureY8',
'Pro16',
'MatureY0',
'MatureY10',
'MatureX2',
'MatureY11',
'Pro19',
'Pro5',
'Pro13',
'Pro14',
'Pro17',
'MatureX_MatureY2',
'MatureY7',
'Pro6',
'Pro15',
'MatureY13',
'MatureX_MatureY3',
'MatureY12',
'MatureX14',
'Pro8',
'MatureY18',
'MatureX_MatureY0',
'MatureX17']
[34]:
deg_features
[34]:
['PreY7',
'PreY9',
'Pro7',
'MatureX6',
'PreX0',
'Pro10',
'MatureX9',
'MatureX14',
'MatureY16',
'PreX15',
'MatureX5',
'PreY5',
'PreY10',
'MatureX0',
'MatureX16',
'MatureY14',
'MatureY19',
'MatureX11',
'PreX12',
'PreX10',
'MatureX7',
'PreX19',
'MatureY17',
'PreY19',
'Pro11',
'MatureY5',
'Pro3',
'Pro4',
'MatureY6',
'PreX16',
'PreX11',
'PreX14',
'MatureY0',
'MatureY10',
'MatureX2',
'PreY1',
'PreY14',
'Pro13',
'Pro5',
'PreY16',
'PreX2',
'Pro14',
'PreX6',
'PreX4',
'Pro6',
'Pro15',
'MatureY3',
'MatureX13',
'MatureY12',
'PreY4',
'Pro12',
'MatureY18',
'PreY3',
'PreY6',
'MatureX17']
[ ]:
[35]:
deg_df.style
[35]:
| MatureX | MatureY | PreX | PreY | Pro | |
|---|---|---|---|---|---|
| 0 | MatureX14 | MatureY0 | PreX0 | PreY5 | Pro12 |
| 1 | MatureX17 | MatureY16 | PreX2 | PreY16 | Pro10 |
| 2 | MatureX5 | MatureY12 | PreX11 | PreY9 | Pro7 |
| 3 | MatureX16 | MatureY14 | PreX19 | PreY6 | Pro6 |
| 4 | MatureX6 | MatureY10 | PreX15 | PreY7 | Pro14 |
| 5 | MatureX9 | MatureY6 | PreX10 | PreY1 | Pro13 |
| 6 | MatureX11 | MatureY5 | PreX16 | PreY10 | Pro15 |
| 7 | MatureX0 | MatureY19 | PreX12 | PreY14 | Pro4 |
| 8 | MatureX13 | MatureY17 | PreX4 | PreY19 | Pro11 |
| 9 | MatureX7 | MatureY3 | PreX14 | PreY3 | Pro3 |
| 10 | MatureX2 | MatureY18 | PreX6 | PreY4 | Pro5 |
| 11 | MatureX4 | MatureY15 | PreX5 | PreY8 | Pro1 |
| 12 | MatureX3 | MatureY2 | PreX3 | PreY11 | Pro0 |
| 13 | MatureX15 | MatureY1 | PreX1 | PreY18 | Pro17 |
| 14 | MatureX18 | MatureY8 | PreX18 | PreY2 | Pro19 |
| 15 | MatureX19 | MatureY13 | PreX17 | PreY0 | Pro8 |
| 16 | MatureX10 | MatureY9 | PreX8 | PreY13 | Pro16 |
| 17 | MatureX8 | MatureY7 | PreX13 | PreY17 | Pro18 |
| 18 | MatureX12 | MatureY4 | PreX7 | PreY15 | Pro2 |
| 19 | MatureX1 | MatureY11 | PreX9 | PreY12 | Pro9 |
| 20 | GradientX5 | GradientY6 | GradientX9 | GradientY9 | Noninformative_low7 |
| 21 | GradientX4 | GradientY5 | GradientX2 | GradientY7 | Noninformative_low5 |
| 22 | GradientX6 | GradientY2 | GradientX3 | GradientY3 | Noninformative_mid12 |
| 23 | GradientX8 | GradientY4 | GradientX8 | GradientY0 | Noninformative_low14 |
| 24 | GradientX3 | GradientY1 | GradientX7 | GradientY4 | Noninformative_mid10 |
| 25 | GradientX7 | GradientY8 | GradientX1 | GradientY5 | Noninformative_low2 |
| 26 | GradientX1 | GradientY0 | GradientX0 | GradientY1 | Noninformative_low11 |
| 27 | GradientX0 | GradientY3 | PreX_PreY3 | GradientY2 | Noninformative_mid13 |
| 28 | GradientX2 | GradientY7 | PreX_PreY0 | GradientY8 | Noninformative_mid2 |
| 29 | GradientX9 | GradientY9 | GradientX5 | GradientY6 | Noninformative_high9 |
| 30 | MatureX_MatureY0 | MatureX_MatureY2 | GradientX6 | PreX_PreY1 | Noninformative_mid9 |
| 31 | MatureX_MatureY1 | MatureX_MatureY0 | GradientX4 | PreX_PreY2 | Noninformative_low4 |
| 32 | MatureX_MatureY4 | MatureX_MatureY4 | PreX_PreY1 | PreX_PreY4 | Noninformative_low13 |
| 33 | MatureX_MatureY3 | MatureX_MatureY1 | PreX_PreY4 | PreX_PreY3 | Noninformative_high8 |
| 34 | MatureX_MatureY2 | MatureX_MatureY3 | PreX_PreY2 | PreX_PreY0 | Noninformative_low8 |
| 35 | Noninformative_high6 | Noninformative_high11 | MatureX2 | MatureY13 | Noninformative_low0 |
| 36 | Noninformative_high4 | Noninformative_high3 | MatureX12 | MatureY11 | Noninformative_mid6 |
| 37 | Noninformative_high5 | Noninformative_high0 | MatureX5 | MatureY9 | Noninformative_high6 |
| 38 | Noninformative_high13 | Checkpoint1 | MatureX16 | MatureY4 | Noninformative_low3 |
| 39 | Noninformative_high12 | Checkpoint0 | MatureX0 | MatureY10 | Noninformative_mid4 |
| 40 | Noninformative_mid14 | Checkpoint4 | MatureX4 | MatureY19 | Noninformative_high14 |
| 41 | Checkpoint3 | Checkpoint2 | MatureX9 | MatureY8 | Noninformative_low1 |
| 42 | Noninformative_high2 | Noninformative_mid6 | MatureX14 | MatureY7 | Noninformative_mid7 |
| 43 | Noninformative_mid0 | Noninformative_mid8 | MatureX6 | MatureY6 | Noninformative_high1 |
| 44 | Noninformative_high7 | Noninformative_mid9 | MatureX13 | MatureY18 | Noninformative_mid5 |
| 45 | Noninformative_high11 | Noninformative_high1 | MatureX7 | MatureY16 | Noninformative_high13 |
| 46 | Noninformative_high3 | Noninformative_mid11 | MatureX18 | MatureY17 | Noninformative_high7 |
| 47 | Checkpoint4 | Noninformative_high12 | MatureX10 | MatureY5 | Noninformative_low6 |
| 48 | Checkpoint0 | Noninformative_low12 | MatureX15 | MatureY14 | Noninformative_high2 |
| 49 | Noninformative_mid7 | Noninformative_mid4 | MatureX17 | MatureY12 | Noninformative_low10 |
| 50 | Checkpoint1 | Noninformative_mid3 | MatureX1 | MatureY1 | Noninformative_mid11 |
| 51 | Noninformative_high1 | Noninformative_low14 | MatureX3 | MatureY0 | Noninformative_high10 |
| 52 | Noninformative_high14 | Noninformative_mid1 | MatureX11 | MatureY2 | Noninformative_mid14 |
| 53 | Noninformative_high8 | Noninformative_high10 | MatureX19 | MatureY3 | Noninformative_high5 |
| 54 | Noninformative_low8 | Noninformative_low9 | MatureX8 | MatureY15 | Noninformative_high4 |
| 55 | Checkpoint2 | Noninformative_low2 | Checkpoint3 | Noninformative_low1 | Noninformative_mid1 |
| 56 | Noninformative_mid6 | Noninformative_high9 | Noninformative_low3 | Noninformative_mid1 | Noninformative_mid8 |
| 57 | Noninformative_low0 | Noninformative_mid12 | Checkpoint4 | Noninformative_low11 | Noninformative_low9 |
| 58 | Noninformative_mid3 | Noninformative_low8 | Noninformative_mid2 | Checkpoint0 | Noninformative_high11 |
| 59 | Noninformative_mid13 | Noninformative_mid0 | Noninformative_low12 | Noninformative_low6 | Noninformative_high0 |
| 60 | Noninformative_mid8 | Noninformative_high7 | Checkpoint2 | Noninformative_mid3 | Noninformative_low12 |
| 61 | Noninformative_mid10 | Noninformative_high8 | Noninformative_high2 | Noninformative_low10 | Noninformative_high12 |
| 62 | Noninformative_low4 | Noninformative_mid13 | Noninformative_low9 | Noninformative_mid5 | Noninformative_mid0 |
| 63 | Noninformative_low13 | Noninformative_mid5 | Checkpoint1 | Noninformative_low13 | Noninformative_high3 |
| 64 | Noninformative_high10 | Noninformative_mid14 | Noninformative_low4 | Noninformative_mid4 | Noninformative_mid3 |
| 65 | Noninformative_high9 | Noninformative_mid7 | Noninformative_high1 | Checkpoint2 | Checkpoint3 |
| 66 | Noninformative_low6 | Noninformative_low3 | Noninformative_mid5 | Noninformative_mid0 | Checkpoint1 |
| 67 | Noninformative_low11 | Noninformative_high13 | Noninformative_mid3 | Noninformative_high10 | Checkpoint2 |
| 68 | Noninformative_mid9 | Noninformative_high14 | Noninformative_low10 | Noninformative_low9 | PreY15 |
| 69 | Noninformative_low10 | Noninformative_low0 | Noninformative_low6 | Noninformative_low7 | Checkpoint4 |
| 70 | Noninformative_high0 | Noninformative_high6 | Noninformative_low0 | Noninformative_low12 | Checkpoint0 |
| 71 | Noninformative_low2 | Noninformative_high5 | Checkpoint0 | Noninformative_mid11 | PreX19 |
| 72 | Noninformative_mid12 | Noninformative_high2 | Noninformative_mid8 | Noninformative_low5 | PreX15 |
| 73 | Noninformative_mid2 | Checkpoint3 | Noninformative_high13 | Noninformative_mid10 | PreX7 |
| 74 | Noninformative_mid1 | Noninformative_low10 | Noninformative_low14 | Noninformative_mid9 | PreX9 |
| 75 | Noninformative_low5 | Noninformative_high4 | Noninformative_low5 | Checkpoint1 | PreY13 |
| 76 | Noninformative_mid11 | Noninformative_low7 | Noninformative_mid11 | Noninformative_high0 | PreX6 |
| 77 | Noninformative_low3 | Noninformative_low4 | Noninformative_high4 | Noninformative_high8 | PreX18 |
| 78 | Noninformative_low1 | Noninformative_low1 | Noninformative_low2 | Noninformative_mid12 | PreX4 |
| 79 | Noninformative_mid4 | Noninformative_mid10 | Noninformative_low13 | Checkpoint4 | PreX1 |
| 80 | Noninformative_low9 | Noninformative_low6 | Noninformative_low7 | Noninformative_high14 | PreY4 |
| 81 | Noninformative_low7 | Noninformative_low11 | Noninformative_mid14 | Noninformative_low8 | PreY8 |
| 82 | Noninformative_mid5 | Noninformative_low13 | Noninformative_high9 | Checkpoint3 | PreX13 |
| 83 | Noninformative_low12 | Noninformative_low5 | Noninformative_low1 | Noninformative_low14 | PreX3 |
| 84 | Noninformative_low14 | Noninformative_mid2 | Noninformative_high5 | Noninformative_high5 | PreX8 |
| 85 | PreX10 | PreY12 | Noninformative_mid4 | Noninformative_mid2 | PreY18 |
| 86 | PreX12 | PreY17 | Noninformative_mid7 | Noninformative_mid7 | PreX0 |
| 87 | PreX2 | PreY5 | Noninformative_high3 | Noninformative_high12 | PreY1 |
| 88 | PreX8 | PreY8 | Noninformative_high0 | Noninformative_high7 | PreY6 |
| 89 | PreX17 | PreY9 | Noninformative_high7 | Noninformative_high3 | PreX16 |
| 90 | PreX0 | PreY0 | Noninformative_mid1 | Noninformative_low4 | PreY5 |
| 91 | PreX4 | PreY16 | Noninformative_high11 | Noninformative_high9 | PreX14 |
| 92 | PreX11 | PreY18 | Noninformative_mid6 | Noninformative_mid8 | PreY3 |
| 93 | PreX6 | PreY2 | Noninformative_high10 | Noninformative_mid13 | PreY0 |
| 94 | PreX19 | PreY19 | Noninformative_mid0 | Noninformative_mid14 | PreX12 |
| 95 | PreX14 | PreY10 | Noninformative_mid10 | Noninformative_low0 | PreX5 |
| 96 | PreX5 | PreY11 | Noninformative_high14 | Noninformative_mid6 | PreY10 |
| 97 | PreX3 | PreY7 | Noninformative_high12 | Noninformative_high4 | PreY11 |
| 98 | PreX13 | PreY3 | Noninformative_mid13 | Noninformative_low2 | PreX2 |
| 99 | PreX15 | PreY14 | Noninformative_low11 | Noninformative_high2 | PreX17 |
| 100 | PreX18 | PreY15 | Noninformative_mid12 | Noninformative_high6 | PreX11 |
| 101 | PreX7 | PreY1 | Noninformative_low8 | Noninformative_low3 | PreY7 |
| 102 | PreX9 | PreY4 | Noninformative_high6 | Noninformative_high13 | PreY17 |
| 103 | PreX16 | PreY13 | Noninformative_mid9 | Noninformative_high11 | PreY14 |
| 104 | PreX1 | PreY6 | Noninformative_high8 | Noninformative_high1 | PreY12 |
| 105 | MatureY15 | MatureX8 | Pro4 | Pro1 | PreY2 |
| 106 | MatureY16 | MatureX1 | Pro15 | Pro8 | PreY19 |
| 107 | MatureY2 | MatureX7 | Pro17 | Pro9 | PreX10 |
| 108 | MatureY3 | MatureX11 | Pro19 | Pro3 | PreY9 |
| 109 | MatureY19 | MatureX19 | Pro14 | Pro11 | PreY16 |
| 110 | MatureY13 | MatureX9 | Pro2 | Pro17 | MatureX0 |
| 111 | MatureY18 | MatureX10 | Pro10 | Pro12 | GradientY6 |
| 112 | MatureY14 | MatureX3 | Pro12 | Pro18 | GradientY1 |
| 113 | MatureY5 | MatureX17 | Pro18 | Pro14 | GradientY9 |
| 114 | MatureY6 | MatureX5 | Pro5 | Pro2 | GradientX4 |
| 115 | MatureY9 | MatureX15 | Pro16 | Pro16 | MatureX7 |
| 116 | MatureY17 | MatureX4 | Pro7 | Pro5 | GradientX2 |
| 117 | MatureY12 | MatureX14 | Pro6 | Pro13 | MatureX15 |
| 118 | MatureY0 | MatureX6 | Pro8 | Pro4 | GradientY8 |
| 119 | MatureY7 | MatureX13 | Pro11 | Pro0 | GradientX0 |
| 120 | MatureY1 | MatureX16 | Pro1 | Pro7 | GradientX7 |
| 121 | MatureY4 | MatureX12 | Pro13 | Pro10 | GradientX1 |
| 122 | MatureY8 | MatureX2 | Pro0 | Pro15 | MatureY1 |
| 123 | MatureY10 | MatureX0 | Pro3 | Pro6 | GradientY2 |
| 124 | MatureY11 | MatureX18 | Pro9 | Pro19 | MatureX13 |
| 125 | PreY9 | PreX16 | MatureX_MatureY1 | MatureX_MatureY3 | MatureX14 |
| 126 | PreY15 | PreX1 | MatureX_MatureY4 | MatureX_MatureY4 | GradientX8 |
| 127 | PreY4 | PreX13 | MatureX_MatureY3 | MatureX_MatureY0 | MatureY12 |
| 128 | PreY13 | Pro0 | MatureX_MatureY0 | MatureX_MatureY1 | MatureY3 |
| 129 | PreY10 | PreX6 | MatureX_MatureY2 | MatureX_MatureY2 | GradientX9 |
| 130 | PreY2 | PreX15 | MatureY4 | MatureX18 | MatureX1 |
| 131 | PreY17 | PreX17 | MatureY10 | MatureX19 | MatureY13 |
| 132 | PreY18 | PreX14 | MatureY0 | MatureX6 | MatureX3 |
| 133 | PreY11 | PreX0 | MatureY11 | MatureX9 | MatureY8 |
| 134 | PreY6 | PreX5 | MatureY18 | MatureX16 | MatureX10 |
| 135 | PreY12 | PreX4 | MatureY16 | MatureX2 | MatureY11 |
| 136 | PreY14 | PreX12 | MatureY2 | MatureX3 | GradientY4 |
| 137 | PreY16 | PreX8 | MatureY15 | MatureX4 | MatureY15 |
| 138 | PreY19 | PreX2 | MatureY6 | MatureX11 | MatureY14 |
| 139 | PreY7 | PreX10 | MatureY5 | MatureX8 | MatureY9 |
| 140 | PreY5 | Pro6 | MatureY3 | MatureX13 | MatureX18 |
| 141 | Pro13 | PreX11 | MatureY7 | MatureX12 | MatureX11 |
| 142 | Pro15 | PreX3 | MatureY17 | MatureX17 | MatureY7 |
| 143 | PreY1 | PreX18 | MatureY8 | MatureX10 | MatureY2 |
| 144 | Pro7 | PreX9 | MatureY1 | MatureX14 | MatureX8 |
| 145 | PreY3 | Pro5 | MatureY12 | MatureX1 | MatureX4 |
| 146 | Pro19 | PreX7 | MatureY14 | MatureX0 | MatureX17 |
| 147 | Pro3 | PreX19 | MatureY9 | MatureX15 | MatureX19 |
| 148 | Pro18 | Pro16 | MatureY19 | MatureX5 | MatureY17 |
| 149 | Pro6 | Pro13 | MatureY13 | MatureX7 | MatureY19 |
| 150 | Pro10 | Pro7 | PreY19 | PreX11 | GradientX6 |
| 151 | Pro2 | Pro19 | PreY16 | PreX9 | GradientX3 |
| 152 | Pro9 | Pro9 | PreY14 | PreX3 | GradientY5 |
| 153 | Pro14 | Pro10 | PreY7 | PreX7 | GradientY7 |
| 154 | Pro11 | Pro3 | PreY6 | PreX10 | MatureX6 |
| 155 | Pro16 | Pro8 | PreY0 | PreX18 | GradientX5 |
| 156 | Pro4 | Pro2 | PreY3 | PreX1 | MatureX16 |
| 157 | Pro17 | Pro11 | PreY1 | PreX5 | MatureX5 |
| 158 | Pro12 | Pro1 | PreY2 | PreX17 | MatureY5 |
| 159 | PreY8 | Pro18 | PreY13 | PreX14 | GradientY3 |
| 160 | PreY0 | Pro4 | PreY8 | PreX13 | MatureY0 |
| 161 | Pro1 | Pro15 | PreY11 | PreX2 | GradientY0 |
| 162 | Pro5 | Pro17 | PreY12 | PreX8 | MatureX12 |
| 163 | Pro8 | Pro14 | PreY17 | PreX16 | MatureX2 |
| 164 | Pro0 | Pro12 | PreY9 | PreX19 | MatureX9 |
| 165 | GradientY7 | GradientX9 | PreY4 | PreX4 | MatureY6 |
| 166 | GradientY5 | GradientX7 | PreY10 | PreX12 | MatureY10 |
| 167 | GradientY3 | GradientX8 | PreY18 | PreX0 | MatureY18 |
| 168 | GradientY0 | GradientX0 | PreY5 | PreX6 | MatureY16 |
| 169 | GradientY2 | GradientX6 | PreY15 | PreX15 | MatureY4 |
| 170 | GradientY6 | GradientX5 | GradientY8 | GradientX6 | PreX_PreY2 |
| 171 | GradientY1 | GradientX3 | GradientY4 | GradientX5 | PreX_PreY0 |
| 172 | GradientY9 | GradientX2 | GradientY0 | GradientX4 | PreX_PreY4 |
| 173 | GradientY4 | GradientX1 | GradientY5 | GradientX3 | PreX_PreY3 |
| 174 | GradientY8 | GradientX4 | GradientY3 | GradientX1 | PreX_PreY1 |
| 175 | PreX_PreY0 | PreX_PreY2 | GradientY2 | GradientX0 | MatureX_MatureY2 |
| 176 | PreX_PreY1 | PreX_PreY1 | GradientY9 | GradientX2 | MatureX_MatureY0 |
| 177 | PreX_PreY4 | PreX_PreY4 | GradientY7 | GradientX7 | MatureX_MatureY1 |
| 178 | PreX_PreY3 | PreX_PreY3 | GradientY6 | GradientX8 | MatureX_MatureY3 |
| 179 | PreX_PreY2 | PreX_PreY0 | GradientY1 | GradientX9 | MatureX_MatureY4 |
[36]:
len(set(deg_df.iloc[:20, ].values.reshape([-1])))
[36]:
100
[37]:
corr_df.style
[37]:
| both | X | Y | |
|---|---|---|---|
| 0 | Pro12 | MatureX2 | MatureY5 |
| 1 | Pro4 | MatureX4 | MatureY16 |
| 2 | Pro1 | MatureX19 | MatureY18 |
| 3 | MatureX_MatureY3 | MatureX5 | MatureY14 |
| 4 | MatureX_MatureY4 | MatureX17 | MatureY10 |
| 5 | Pro14 | MatureX14 | Pro1 |
| 6 | Pro2 | MatureX18 | Pro4 |
| 7 | Pro3 | MatureX12 | MatureY11 |
| 8 | MatureX_MatureY0 | MatureX16 | Pro12 |
| 9 | Pro5 | MatureX11 | MatureY2 |
| 10 | Pro16 | MatureX_MatureY3 | MatureX_MatureY4 |
| 11 | Pro18 | Pro12 | MatureY0 |
| 12 | MatureX_MatureY1 | Pro17 | MatureY12 |
| 13 | Pro17 | Pro5 | Pro3 |
| 14 | Pro10 | Pro2 | MatureY7 |
| 15 | Pro11 | Pro6 | Pro14 |
| 16 | Pro8 | MatureX0 | MatureX_MatureY3 |
| 17 | Pro15 | Pro4 | MatureY19 |
| 18 | Pro6 | MatureX9 | MatureY4 |
| 19 | Pro9 | Pro14 | Pro13 |
| 20 | MatureX_MatureY2 | MatureX_MatureY4 | Pro11 |
| 21 | Pro7 | MatureX8 | Pro18 |
| 22 | Pro13 | MatureX_MatureY0 | MatureX_MatureY1 |
| 23 | Pro19 | Pro1 | MatureY8 |
| 24 | Pro0 | Pro15 | MatureY13 |
| 25 | MatureX5 | MatureX13 | MatureY6 |
| 26 | MatureX8 | Pro10 | MatureY15 |
| 27 | MatureX9 | Pro8 | Pro9 |
| 28 | MatureX10 | Pro7 | Pro16 |
| 29 | MatureX1 | MatureX7 | MatureY3 |
| 30 | MatureX19 | Pro0 | MatureY1 |
| 31 | MatureX4 | Pro16 | Pro2 |
| 32 | MatureX17 | Pro3 | MatureY17 |
| 33 | MatureX2 | Pro18 | Pro10 |
| 34 | MatureX16 | MatureX_MatureY1 | MatureX_MatureY0 |
| 35 | MatureY18 | MatureX6 | MatureY9 |
| 36 | MatureX6 | MatureX3 | Pro5 |
| 37 | MatureX12 | MatureX10 | MatureX_MatureY2 |
| 38 | MatureX3 | Pro11 | Pro19 |
| 39 | MatureX11 | MatureX15 | Pro8 |
| 40 | MatureX14 | MatureX_MatureY2 | Pro15 |
| 41 | MatureY16 | Pro19 | Pro17 |
| 42 | MatureX15 | MatureX1 | Pro7 |
| 43 | MatureX7 | Pro9 | Pro6 |
| 44 | MatureY3 | Pro13 | Pro0 |
| 45 | MatureX13 | GradientX7 | GradientY5 |
| 46 | MatureY10 | GradientX5 | GradientY8 |
| 47 | MatureY6 | GradientX3 | GradientY1 |
| 48 | MatureY2 | GradientX8 | GradientY3 |
| 49 | MatureX18 | GradientX4 | GradientY6 |
| 50 | MatureY17 | GradientX9 | GradientY2 |
| 51 | MatureY5 | GradientX6 | GradientY0 |
| 52 | MatureY12 | GradientX0 | GradientY4 |
| 53 | MatureY4 | GradientX2 | GradientY7 |
| 54 | MatureY13 | GradientX1 | GradientY9 |
| 55 | MatureY14 | PreX9 | PreY6 |
| 56 | MatureX0 | PreX7 | PreY13 |
| 57 | MatureY0 | PreX_PreY3 | PreY15 |
| 58 | MatureY19 | PreX_PreY0 | PreY4 |
| 59 | MatureY15 | PreX3 | PreX_PreY0 |
| 60 | MatureY7 | PreX_PreY2 | PreY11 |
| 61 | MatureY9 | PreX18 | PreY3 |
| 62 | MatureY1 | PreX_PreY4 | PreX_PreY2 |
| 63 | MatureY11 | PreX19 | PreY8 |
| 64 | MatureY8 | PreX1 | PreY1 |
| 65 | GradientX6 | PreX13 | PreY14 |
| 66 | GradientX9 | PreX15 | PreX_PreY4 |
| 67 | GradientX5 | PreX16 | PreY0 |
| 68 | GradientX7 | PreX17 | PreX_PreY1 |
| 69 | GradientX3 | PreX11 | PreY18 |
| 70 | GradientX0 | PreX5 | PreY10 |
| 71 | GradientX8 | PreX_PreY1 | PreY7 |
| 72 | GradientX2 | PreX14 | PreY19 |
| 73 | GradientX1 | PreX0 | PreY5 |
| 74 | GradientY5 | PreX6 | PreY2 |
| 75 | GradientX4 | PreX8 | PreY17 |
| 76 | GradientY7 | PreX4 | PreX_PreY3 |
| 77 | GradientY3 | PreX2 | Checkpoint0 |
| 78 | GradientY0 | PreX12 | PreY12 |
| 79 | PreX_PreY0 | Checkpoint3 | PreY9 |
| 80 | PreX_PreY2 | PreX10 | PreY16 |
| 81 | GradientY2 | Checkpoint1 | Checkpoint1 |
| 82 | PreX_PreY3 | Checkpoint4 | Checkpoint4 |
| 83 | GradientY6 | Noninformative_high6 | Checkpoint2 |
| 84 | PreX_PreY4 | Noninformative_high13 | Noninformative_high3 |
| 85 | GradientY1 | Checkpoint0 | Noninformative_low12 |
| 86 | GradientY8 | Checkpoint2 | Noninformative_high0 |
| 87 | GradientY4 | Noninformative_high4 | Noninformative_high11 |
| 88 | PreX_PreY1 | Noninformative_high3 | Noninformative_high12 |
| 89 | GradientY9 | Noninformative_mid3 | Checkpoint3 |
| 90 | Checkpoint0 | Noninformative_high11 | Noninformative_mid6 |
| 91 | Checkpoint1 | Noninformative_mid14 | Noninformative_mid8 |
| 92 | Checkpoint4 | Noninformative_high5 | Noninformative_mid0 |
| 93 | Checkpoint2 | Noninformative_high12 | Noninformative_mid1 |
| 94 | Checkpoint3 | Noninformative_high0 | Noninformative_high1 |
| 95 | PreY1 | Noninformative_high14 | MatureX9 |
| 96 | Noninformative_high3 | Noninformative_high7 | Noninformative_low9 |
| 97 | PreY15 | Noninformative_mid0 | Noninformative_mid3 |
| 98 | PreY6 | Noninformative_mid7 | Noninformative_mid5 |
| 99 | Noninformative_high11 | Noninformative_high1 | Noninformative_mid9 |
| 100 | PreY13 | Noninformative_high2 | Noninformative_high9 |
| 101 | PreX7 | Noninformative_mid8 | Noninformative_mid14 |
| 102 | PreY0 | Noninformative_mid6 | GradientX9 |
| 103 | PreY8 | MatureY13 | Noninformative_mid11 |
| 104 | Noninformative_high0 | Noninformative_high8 | MatureX8 |
| 105 | Noninformative_high12 | MatureY16 | PreX17 |
| 106 | PreX9 | Noninformative_low4 | Noninformative_high10 |
| 107 | Noninformative_mid3 | MatureY18 | Noninformative_high8 |
| 108 | PreX19 | MatureY6 | MatureX10 |
| 109 | PreX18 | Noninformative_mid11 | MatureX1 |
| 110 | PreY3 | GradientY7 | GradientX6 |
| 111 | Noninformative_mid14 | Noninformative_high10 | MatureX5 |
| 112 | PreY5 | MatureY3 | Noninformative_high7 |
| 113 | Noninformative_high13 | GradientY5 | Noninformative_mid7 |
| 114 | PreY4 | MatureY17 | Noninformative_high14 |
| 115 | PreX3 | PreY11 | Noninformative_high2 |
| 116 | PreY7 | Noninformative_high9 | Noninformative_mid4 |
| 117 | PreX15 | Noninformative_low0 | PreX10 |
| 118 | PreY18 | PreY9 | Noninformative_mid13 |
| 119 | PreX13 | Noninformative_mid10 | Noninformative_high5 |
| 120 | PreX1 | GradientY0 | GradientX5 |
| 121 | PreY11 | PreY4 | GradientX7 |
| 122 | Noninformative_mid0 | Noninformative_low8 | Noninformative_low10 |
| 123 | Noninformative_mid8 | PreY2 | GradientX2 |
| 124 | PreY14 | MatureY12 | MatureX6 |
| 125 | PreX14 | GradientY3 | Noninformative_high13 |
| 126 | Noninformative_high5 | Noninformative_low2 | Noninformative_mid12 |
| 127 | PreX6 | PreY14 | Noninformative_low1 |
| 128 | Noninformative_high6 | PreY17 | Noninformative_low6 |
| 129 | Noninformative_high4 | PreY10 | Noninformative_low3 |
| 130 | Noninformative_mid6 | MatureY1 | PreX5 |
| 131 | PreY19 | PreY19 | PreX16 |
| 132 | PreY10 | Noninformative_low10 | GradientX0 |
| 133 | Noninformative_high1 | Noninformative_low13 | PreX9 |
| 134 | PreX16 | MatureY19 | PreX0 |
| 135 | PreX11 | MatureY4 | Noninformative_low2 |
| 136 | PreY2 | Noninformative_mid1 | MatureX16 |
| 137 | PreX5 | MatureY10 | Noninformative_low8 |
| 138 | PreY16 | Noninformative_low6 | Noninformative_low0 |
| 139 | PreX2 | PreY1 | PreX1 |
| 140 | PreX4 | Noninformative_low3 | PreX8 |
| 141 | PreX0 | PreY12 | PreX11 |
| 142 | Noninformative_high7 | PreY6 | Noninformative_high4 |
| 143 | Noninformative_high14 | Noninformative_low11 | PreX13 |
| 144 | PreY17 | Noninformative_mid4 | MatureX14 |
| 145 | PreX8 | Noninformative_mid13 | MatureX19 |
| 146 | Noninformative_mid7 | Noninformative_mid2 | GradientX8 |
| 147 | PreY12 | PreY13 | PreX3 |
| 148 | Noninformative_high2 | Noninformative_low12 | PreX12 |
| 149 | Noninformative_low12 | GradientY2 | PreX7 |
| 150 | Noninformative_high8 | PreY18 | MatureX3 |
| 151 | Noninformative_mid11 | MatureY14 | PreX14 |
| 152 | Noninformative_high9 | MatureY15 | Noninformative_low14 |
| 153 | Noninformative_high10 | Noninformative_mid9 | Noninformative_low13 |
| 154 | PreX17 | MatureY2 | Noninformative_low7 |
| 155 | PreX12 | PreY7 | GradientX3 |
| 156 | Noninformative_mid1 | MatureY0 | MatureX13 |
| 157 | PreY9 | Noninformative_low9 | PreX4 |
| 158 | Noninformative_mid9 | PreY3 | GradientX1 |
| 159 | PreX10 | MatureY5 | MatureX18 |
| 160 | Noninformative_low9 | MatureY9 | PreX18 |
| 161 | Noninformative_low0 | MatureY7 | MatureX0 |
| 162 | Noninformative_low10 | PreY15 | MatureX4 |
| 163 | Noninformative_mid4 | PreY16 | MatureX15 |
| 164 | Noninformative_low8 | Noninformative_low7 | PreX15 |
| 165 | Noninformative_mid13 | Noninformative_low1 | Noninformative_low4 |
| 166 | Noninformative_low2 | MatureY11 | Noninformative_high6 |
| 167 | Noninformative_low4 | GradientY6 | PreX6 |
| 168 | Noninformative_mid5 | GradientY4 | PreX2 |
| 169 | Noninformative_low6 | Noninformative_mid5 | MatureX2 |
| 170 | Noninformative_low3 | GradientY1 | MatureX12 |
| 171 | Noninformative_low13 | Noninformative_low14 | Noninformative_mid10 |
| 172 | Noninformative_mid10 | GradientY9 | MatureX11 |
| 173 | Noninformative_low1 | MatureY8 | MatureX17 |
| 174 | Noninformative_mid12 | Noninformative_mid12 | MatureX7 |
| 175 | Noninformative_mid2 | PreY0 | Noninformative_low5 |
| 176 | Noninformative_low14 | GradientY8 | Noninformative_mid2 |
| 177 | Noninformative_low11 | Noninformative_low5 | GradientX4 |
| 178 | Noninformative_low5 | PreY8 | PreX19 |
| 179 | Noninformative_low7 | PreY5 | Noninformative_low11 |
[137]:
len(set(corr_df.iloc[:77, ].values.reshape([-1])))
[137]:
124
[ ]:
[ ]: