Cell subsampling using TopACeDo

[1]:
%load_ext autotime
%config InlineBackend.figure_format = 'retina'

import scarf
scarf.__version__
[1]:
'0.7.8'
time: 1.54 s (started: 2021-08-22 17:57:10 +00:00)

1) Installing dependencies

We need to install the TopACeDo algorithm to perform subsampling

[2]:
!pip install git+https://github.com/fraenkel-lab/pcst_fast.git@deb3236cc26ee9fee77d5af40fac3f12bb753850
!pip install -U topacedo
Collecting git+https://github.com/fraenkel-lab/pcst_fast.git@deb3236cc26ee9fee77d5af40fac3f12bb753850
  Cloning https://github.com/fraenkel-lab/pcst_fast.git (to revision deb3236cc26ee9fee77d5af40fac3f12bb753850) to /tmp/pip-req-build-kwah0_84
  Running command git clone -q https://github.com/fraenkel-lab/pcst_fast.git /tmp/pip-req-build-kwah0_84
  Running command git rev-parse -q --verify 'sha^deb3236cc26ee9fee77d5af40fac3f12bb753850'
  Running command git fetch -q https://github.com/fraenkel-lab/pcst_fast.git deb3236cc26ee9fee77d5af40fac3f12bb753850
  Running command git checkout -q deb3236cc26ee9fee77d5af40fac3f12bb753850
  Resolved https://github.com/fraenkel-lab/pcst_fast.git to commit deb3236cc26ee9fee77d5af40fac3f12bb753850
Requirement already satisfied: pybind11>=2.1.0 in /home/docs/checkouts/readthedocs.org/user_builds/scarf/envs/0.7.8/lib/python3.8/site-packages (from pcst-fast==1.0.7) (2.7.1)
Building wheels for collected packages: pcst-fast
  Building wheel for pcst-fast (setup.py) ... - \ | / - \ done
  Created wheel for pcst-fast: filename=pcst_fast-1.0.7-cp38-cp38-linux_x86_64.whl size=840708 sha256=1f65bb2df5e208a4c84487443a39f61a68859676b362347b7421b5546ceab15d
  Stored in directory: /home/docs/.cache/pip/wheels/48/f1/74/6bb2e9cc262228dbdc63916ec60f0717574b5f633b6ee30b0a
Successfully built pcst-fast
Installing collected packages: pcst-fast
Successfully installed pcst-fast-1.0.7
Requirement already satisfied: topacedo in /home/docs/checkouts/readthedocs.org/user_builds/scarf/envs/0.7.8/lib/python3.8/site-packages (0.2.7)
time: 21.6 s (started: 2021-08-22 17:57:12 +00:00)

2) Fetching pre-processed data

[3]:
# Loading preanalyzed dataset that was processed in the `basic_tutorial` vignette
scarf.fetch_dataset('tenx_5K_pbmc_rnaseq', as_zarr=True, save_path='scarf_datasets')
INFO: Download started...
--2021-08-22 17:57:39--  https://files.de-1.osf.io/v1/resources/zeupv/providers/osfstorage/6096d5685533b405bfe1eeb3
Resolving files.de-1.osf.io (files.de-1.osf.io)... 35.186.249.111
Connecting to files.de-1.osf.io (files.de-1.osf.io)|35.186.249.111|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://storage.googleapis.com/cos-osf-prod-files-de-1/1ef8b465325d04f0b87ed06fe7813ec6698d1a9a45e3511e885ae45e732f9bb8?response-content-disposition=attachment%3B%20filename%3D%22data.zarr.tar.gz%22%3B%20filename%2A%3DUTF-8%27%27data.zarr.tar.gz&GoogleAccessId=files-de-1%40cos-osf-prod.iam.gserviceaccount.com&Expires=1629655121&Signature=azppnAgIYfK4mvm3snLSwtr6dn0PQAOsAX%2Bl7Ux4L9LP70jCjhIQLW7Dx7b2gEw347fdzqVdop4QanPbM9IfvGx9cgJ0buC6XRVxKJPYOsGno2mmDDtCxXI5gBQvENukwA57m6zyQyNEtUUJ2%2BH8qH8JiFB6B%2BiUIWmZlWo1Zc6AUnMpeTjrKJCI5dojU%2ByJwObEne96EeRtdfh2pOBdWxwv8AMuSsGr%2FwGnBzBM2mQZvkJzA9cCgYo6BC4jmI9OTvFqsr2PniHlPDtZdDFQY59IxGJuiN5bOkwBma%2Fwup7WJs9muaNudM7G42BH5junU6Eu%2B9SAbv8eIjltdcdGvg%3D%3D [following]
--2021-08-22 17:57:41--  https://storage.googleapis.com/cos-osf-prod-files-de-1/1ef8b465325d04f0b87ed06fe7813ec6698d1a9a45e3511e885ae45e732f9bb8?response-content-disposition=attachment%3B%20filename%3D%22data.zarr.tar.gz%22%3B%20filename%2A%3DUTF-8%27%27data.zarr.tar.gz&GoogleAccessId=files-de-1%40cos-osf-prod.iam.gserviceaccount.com&Expires=1629655121&Signature=azppnAgIYfK4mvm3snLSwtr6dn0PQAOsAX%2Bl7Ux4L9LP70jCjhIQLW7Dx7b2gEw347fdzqVdop4QanPbM9IfvGx9cgJ0buC6XRVxKJPYOsGno2mmDDtCxXI5gBQvENukwA57m6zyQyNEtUUJ2%2BH8qH8JiFB6B%2BiUIWmZlWo1Zc6AUnMpeTjrKJCI5dojU%2ByJwObEne96EeRtdfh2pOBdWxwv8AMuSsGr%2FwGnBzBM2mQZvkJzA9cCgYo6BC4jmI9OTvFqsr2PniHlPDtZdDFQY59IxGJuiN5bOkwBma%2Fwup7WJs9muaNudM7G42BH5junU6Eu%2B9SAbv8eIjltdcdGvg%3D%3D
Resolving storage.googleapis.com (storage.googleapis.com)... 172.217.4.48, 172.217.4.80, 172.217.4.208, ...
Connecting to storage.googleapis.com (storage.googleapis.com)|172.217.4.48|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 31491651 (30M) [application/octet-stream]
Saving to: ‘scarf_datasets/tenx_5K_pbmc_rnaseq/data.zarr.tar.gz’

     0K .......... .......... .......... .......... ..........  0% 1.65M 18s
    50K .......... .......... .......... .......... ..........  0% 2.52M 15s
   100K .......... .......... .......... .......... ..........  0% 4.84M 12s
   150K .......... .......... .......... .......... ..........  0% 7.03M 10s
   200K .......... .......... .......... .......... ..........  0% 7.33M 9s
   250K .......... .......... .......... .......... ..........  0% 9.75M 8s
   300K .......... .......... .......... .......... ..........  1% 11.9M 7s
   350K .......... .......... .......... .......... ..........  1% 13.3M 6s
   400K .......... .......... .......... .......... ..........  1% 13.1M 6s
   450K .......... .......... .......... .......... ..........  1% 26.6M 6s
   500K .......... .......... .......... .......... ..........  1% 12.5M 5s
   550K .......... .......... .......... .......... ..........  1% 11.4M 5s
   600K .......... .......... .......... .......... ..........  2% 24.8M 5s
   650K .......... .......... .......... .......... ..........  2% 45.4M 4s
   700K .......... .......... .......... .......... ..........  2% 49.8M 4s
   750K .......... .......... .......... .......... ..........  2% 62.4M 4s
   800K .......... .......... .......... .......... ..........  2% 5.97M 4s
   850K .......... .......... .......... .......... ..........  2% 10.0M 4s
   900K .......... .......... .......... .......... ..........  3% 3.75M 4s
   950K .......... .......... .......... .......... ..........  3% 11.3M 4s
  1000K .......... .......... .......... .......... ..........  3% 14.1M 4s
  1050K .......... .......... .......... .......... ..........  3% 16.6M 4s
  1100K .......... .......... .......... .......... ..........  3%  106M 4s
  1150K .......... .......... .......... .......... ..........  3%  164M 3s
  1200K .......... .......... .......... .......... ..........  4%  216M 3s
  1250K .......... .......... .......... .......... ..........  4%  218M 3s
  1300K .......... .......... .......... .......... ..........  4%  216M 3s
  1350K .......... .......... .......... .......... ..........  4%  197M 3s
  1400K .......... .......... .......... .......... ..........  4%  195M 3s
  1450K .......... .......... .......... .......... ..........  4%  207M 3s
  1500K .......... .......... .......... .......... ..........  5%  209M 3s
  1550K .......... .......... .......... .......... ..........  5%  181M 3s
  1600K .......... .......... .......... .......... ..........  5%  203M 3s
  1650K .......... .......... .......... .......... ..........  5%  222M 2s
  1700K .......... .......... .......... .......... ..........  5%  216M 2s
  1750K .......... .......... .......... .......... ..........  5% 5.84M 2s
  1800K .......... .......... .......... .......... ..........  6%  214M 2s
  1850K .......... .......... .......... .......... ..........  6%  217M 2s
  1900K .......... .......... .......... .......... ..........  6%  200M 2s
  1950K .......... .......... .......... .......... ..........  6%  182M 2s
  2000K .......... .......... .......... .......... ..........  6%  201M 2s
  2050K .......... .......... .......... .......... ..........  6%  219M 2s
  2100K .......... .......... .......... .......... ..........  6%  222M 2s
  2150K .......... .......... .......... .......... ..........  7%  184M 2s
  2200K .......... .......... .......... .......... ..........  7%  220M 2s
  2250K .......... .......... .......... .......... ..........  7%  220M 2s
  2300K .......... .......... .......... .......... ..........  7%  199M 2s
  2350K .......... .......... .......... .......... ..........  7%  182M 2s
  2400K .......... .......... .......... .......... ..........  7% 13.0M 2s
  2450K .......... .......... .......... .......... ..........  8%  105M 2s
  2500K .......... .......... .......... .......... ..........  8% 97.8M 2s
  2550K .......... .......... .......... .......... ..........  8%  159M 2s
  2600K .......... .......... .......... .......... ..........  8%  105M 2s
  2650K .......... .......... .......... .......... ..........  8%  111M 2s
  2700K .......... .......... .......... .......... ..........  8%  152M 2s
  2750K .......... .......... .......... .......... ..........  9%  129M 2s
  2800K .......... .......... .......... .......... ..........  9%  216M 2s
  2850K .......... .......... .......... .......... ..........  9%  215M 2s
  2900K .......... .......... .......... .......... ..........  9%  221M 2s
  2950K .......... .......... .......... .......... ..........  9%  201M 2s
  3000K .......... .......... .......... .......... ..........  9%  219M 1s
  3050K .......... .......... .......... .......... .......... 10% 3.85M 2s
  3100K .......... .......... .......... .......... .......... 10% 17.1M 2s
  3150K .......... .......... .......... .......... .......... 10% 5.32M 2s
  3200K .......... .......... .......... .......... .......... 10% 19.0M 2s
  3250K .......... .......... .......... .......... .......... 10% 38.6M 2s
  3300K .......... .......... .......... .......... .......... 10%  212M 2s
  3350K .......... .......... .......... .......... .......... 11%  192M 2s
  3400K .......... .......... .......... .......... .......... 11%  206M 2s
  3450K .......... .......... .......... .......... .......... 11%  223M 2s
  3500K .......... .......... .......... .......... .......... 11%  221M 1s
  3550K .......... .......... .......... .......... .......... 11%  182M 1s
  3600K .......... .......... .......... .......... .......... 11%  208M 1s
  3650K .......... .......... .......... .......... .......... 12%  219M 1s
  3700K .......... .......... .......... .......... .......... 12%  217M 1s
  3750K .......... .......... .......... .......... .......... 12%  186M 1s
  3800K .......... .......... .......... .......... .......... 12%  218M 1s
  3850K .......... .......... .......... .......... .......... 12%  212M 1s
  3900K .......... .......... .......... .......... .......... 12%  214M 1s
  3950K .......... .......... .......... .......... .......... 13%  179M 1s
  4000K .......... .......... .......... .......... .......... 13%  212M 1s
  4050K .......... .......... .......... .......... .......... 13%  186K 3s
  4100K .......... .......... .......... .......... .......... 13%  129M 3s
  4150K .......... .......... .......... .......... .......... 13% 33.3M 3s
  4200K .......... .......... .......... .......... .......... 13% 92.7M 3s
  4250K .......... .......... .......... .......... .......... 13%  116M 3s
  4300K .......... .......... .......... .......... .......... 14% 96.4M 3s
  4350K .......... .......... .......... .......... .......... 14% 11.3M 3s
  4400K .......... .......... .......... .......... .......... 14% 21.6M 3s
  4450K .......... .......... .......... .......... .......... 14%  235M 3s
  4500K .......... .......... .......... .......... .......... 14%  239M 3s
  4550K .......... .......... .......... .......... .......... 14%  237M 3s
  4600K .......... .......... .......... .......... .......... 15%  213M 3s
  4650K .......... .......... .......... .......... .......... 15%  243M 3s
  4700K .......... .......... .......... .......... .......... 15%  231M 3s
  4750K .......... .......... .......... .......... .......... 15%  231M 3s
  4800K .......... .......... .......... .......... .......... 15%  198M 3s
  4850K .......... .......... .......... .......... .......... 15% 10.5M 3s
  4900K .......... .......... .......... .......... .......... 16% 16.3M 3s
  4950K .......... .......... .......... .......... .......... 16% 11.5M 3s
  5000K .......... .......... .......... .......... .......... 16% 22.3M 2s
  5050K .......... .......... .......... .......... .......... 16%  226M 2s
  5100K .......... .......... .......... .......... .......... 16%  237M 2s
  5150K .......... .......... .......... .......... .......... 16%  238M 2s
  5200K .......... .......... .......... .......... .......... 17%  194M 2s
  5250K .......... .......... .......... .......... .......... 17%  238M 2s
  5300K .......... .......... .......... .......... .......... 17%  242M 2s
  5350K .......... .......... .......... .......... .......... 17%  242M 2s
  5400K .......... .......... .......... .......... .......... 17%  168M 2s
  5450K .......... .......... .......... .......... .......... 17%  222M 2s
  5500K .......... .......... .......... .......... .......... 18% 4.35M 2s
  5550K .......... .......... .......... .......... .......... 18% 16.6M 2s
  5600K .......... .......... .......... .......... .......... 18% 25.3M 2s
  5650K .......... .......... .......... .......... .......... 18%  230M 2s
  5700K .......... .......... .......... .......... .......... 18%  240M 2s
  5750K .......... .......... .......... .......... .......... 18%  234M 2s
  5800K .......... .......... .......... .......... .......... 19%  212M 2s
  5850K .......... .......... .......... .......... .......... 19%  238M 2s
  5900K .......... .......... .......... .......... .......... 19%  235M 2s
  5950K .......... .......... .......... .......... .......... 19%  115M 2s
  6000K .......... .......... .......... .......... .......... 19%  118M 2s
  6050K .......... .......... .......... .......... .......... 19%  232M 2s
  6100K .......... .......... .......... .......... .......... 19%  237M 2s
  6150K .......... .......... .......... .......... .......... 20%  230M 2s
  6200K .......... .......... .......... .......... .......... 20%  206M 2s
  6250K .......... .......... .......... .......... .......... 20%  225M 2s
  6300K .......... .......... .......... .......... .......... 20%  234M 2s
  6350K .......... .......... .......... .......... .......... 20%  237M 2s
  6400K .......... .......... .......... .......... .......... 20%  178M 2s
  6450K .......... .......... .......... .......... .......... 21% 5.01M 2s
  6500K .......... .......... .......... .......... .......... 21% 19.7M 2s
  6550K .......... .......... .......... .......... .......... 21% 20.1M 2s
  6600K .......... .......... .......... .......... .......... 21% 13.4M 2s
  6650K .......... .......... .......... .......... .......... 21% 21.1M 2s
  6700K .......... .......... .......... .......... .......... 21% 36.2M 2s
  6750K .......... .......... .......... .......... .......... 22%  237M 2s
  6800K .......... .......... .......... .......... .......... 22%  199M 2s
  6850K .......... .......... .......... .......... .......... 22%  234M 2s
  6900K .......... .......... .......... .......... .......... 22%  238M 2s
  6950K .......... .......... .......... .......... .......... 22%  241M 2s
  7000K .......... .......... .......... .......... .......... 22%  211M 2s
  7050K .......... .......... .......... .......... .......... 23%  238M 2s
  7100K .......... .......... .......... .......... .......... 23%  229M 2s
  7150K .......... .......... .......... .......... .......... 23%  227M 2s
  7200K .......... .......... .......... .......... .......... 23% 5.89M 2s
  7250K .......... .......... .......... .......... .......... 23%  214M 2s
  7300K .......... .......... .......... .......... .......... 23%  234M 2s
  7350K .......... .......... .......... .......... .......... 24%  242M 2s
  7400K .......... .......... .......... .......... .......... 24%  216M 2s
  7450K .......... .......... .......... .......... .......... 24%  223M 2s
  7500K .......... .......... .......... .......... .......... 24%  235M 2s
  7550K .......... .......... .......... .......... .......... 24%  239M 2s
  7600K .......... .......... .......... .......... .......... 24%  192M 2s
  7650K .......... .......... .......... .......... .......... 25%  233M 2s
  7700K .......... .......... .......... .......... .......... 25%  234M 2s
  7750K .......... .......... .......... .......... .......... 25%  246M 2s
  7800K .......... .......... .......... .......... .......... 25%  208M 2s
  7850K .......... .......... .......... .......... .......... 25%  234M 2s
  7900K .......... .......... .......... .......... .......... 25%  246M 2s
  7950K .......... .......... .......... .......... .......... 26%  232M 2s
  8000K .......... .......... .......... .......... .......... 26%  189M 2s
  8050K .......... .......... .......... .......... .......... 26%  238M 2s
  8100K .......... .......... .......... .......... .......... 26%  235M 2s
  8150K .......... .......... .......... .......... .......... 26% 1.12M 2s
  8200K .......... .......... .......... .......... .......... 26%  117M 2s
  8250K .......... .......... .......... .......... .......... 26% 56.1M 2s
  8300K .......... .......... .......... .......... .......... 27%  120M 2s
  8350K .......... .......... .......... .......... .......... 27% 94.8M 2s
  8400K .......... .......... .......... .......... .......... 27%  194M 2s
  8450K .......... .......... .......... .......... .......... 27%  117M 2s
  8500K .......... .......... .......... .......... .......... 27% 71.0M 2s
  8550K .......... .......... .......... .......... .......... 27% 81.9M 2s
  8600K .......... .......... .......... .......... .......... 28%  195M 2s
  8650K .......... .......... .......... .......... .......... 28%  181M 2s
  8700K .......... .......... .......... .......... .......... 28%  135M 2s
  8750K .......... .......... .......... .......... .......... 28% 86.4M 1s
  8800K .......... .......... .......... .......... .......... 28%  113M 1s
  8850K .......... .......... .......... .......... .......... 28%  167M 1s
  8900K .......... .......... .......... .......... .......... 29%  123M 1s
  8950K .......... .......... .......... .......... .......... 29%  238M 1s
  9000K .......... .......... .......... .......... .......... 29% 3.17M 1s
  9050K .......... .......... .......... .......... .......... 29% 7.73M 1s
  9100K .......... .......... .......... .......... .......... 29% 22.5M 1s
  9150K .......... .......... .......... .......... .......... 29% 19.7M 1s
  9200K .......... .......... .......... .......... .......... 30% 31.8M 1s
  9250K .......... .......... .......... .......... .......... 30%  237M 1s
  9300K .......... .......... .......... .......... .......... 30%  239M 1s
  9350K .......... .......... .......... .......... .......... 30%  235M 1s
  9400K .......... .......... .......... .......... .......... 30%  116M 1s
  9450K .......... .......... .......... .......... .......... 30%  107M 1s
  9500K .......... .......... .......... .......... .......... 31% 5.87M 1s
  9550K .......... .......... .......... .......... .......... 31%  231M 1s
  9600K .......... .......... .......... .......... .......... 31%  201M 1s
  9650K .......... .......... .......... .......... .......... 31%  237M 1s
  9700K .......... .......... .......... .......... .......... 31%  239M 1s
  9750K .......... .......... .......... .......... .......... 31%  249M 1s
  9800K .......... .......... .......... .......... .......... 32%  202M 1s
  9850K .......... .......... .......... .......... .......... 32%  231M 1s
  9900K .......... .......... .......... .......... .......... 32%  240M 1s
  9950K .......... .......... .......... .......... .......... 32%  223M 1s
 10000K .......... .......... .......... .......... .......... 32%  179M 1s
 10050K .......... .......... .......... .......... .......... 32%  236M 1s
 10100K .......... .......... .......... .......... .......... 33%  224M 1s
 10150K .......... .......... .......... .......... .......... 33%  230M 1s
 10200K .......... .......... .......... .......... .......... 33%  215M 1s
 10250K .......... .......... .......... .......... .......... 33%  225M 1s
 10300K .......... .......... .......... .......... .......... 33%  228M 1s
 10350K .......... .......... .......... .......... .......... 33%  232M 1s
 10400K .......... .......... .......... .......... .......... 33%  183M 1s
 10450K .......... .......... .......... .......... .......... 34%  227M 1s
 10500K .......... .......... .......... .......... .......... 34%  198M 1s
 10550K .......... .......... .......... .......... .......... 34%  237M 1s
 10600K .......... .......... .......... .......... .......... 34%  180M 1s
 10650K .......... .......... .......... .......... .......... 34%  232M 1s
 10700K .......... .......... .......... .......... .......... 34%  231M 1s
 10750K .......... .......... .......... .......... .......... 35%  225M 1s
 10800K .......... .......... .......... .......... .......... 35%  189M 1s
 10850K .......... .......... .......... .......... .......... 35%  230M 1s
 10900K .......... .......... .......... .......... .......... 35%  223M 1s
 10950K .......... .......... .......... .......... .......... 35%  233M 1s
 11000K .......... .......... .......... .......... .......... 35%  213M 1s
 11050K .......... .......... .......... .......... .......... 36%  213M 1s
 11100K .......... .......... .......... .......... .......... 36%  235M 1s
 11150K .......... .......... .......... .......... .......... 36%  233M 1s
 11200K .......... .......... .......... .......... .......... 36%  182M 1s
 11250K .......... .......... .......... .......... .......... 36%  223M 1s
 11300K .......... .......... .......... .......... .......... 36%  223M 1s
 11350K .......... .......... .......... .......... .......... 37%  237M 1s
 11400K .......... .......... .......... .......... .......... 37%  204M 1s
 11450K .......... .......... .......... .......... .......... 37%  231M 1s
 11500K .......... .......... .......... .......... .......... 37%  103M 1s
 11550K .......... .......... .......... .......... .......... 37%  235M 1s
 11600K .......... .......... .......... .......... .......... 37%  145M 1s
 11650K .......... .......... .......... .......... .......... 38%  226M 1s
 11700K .......... .......... .......... .......... .......... 38% 3.50M 1s
 11750K .......... .......... .......... .......... .......... 38% 12.6M 1s
 11800K .......... .......... .......... .......... .......... 38% 53.9M 1s
 11850K .......... .......... .......... .......... .......... 38% 87.5M 1s
 11900K .......... .......... .......... .......... .......... 38%  127M 1s
 11950K .......... .......... .......... .......... .......... 39%  245M 1s
 12000K .......... .......... .......... .......... .......... 39% 7.22M 1s
 12050K .......... .......... .......... .......... .......... 39%  156M 1s
 12100K .......... .......... .......... .......... .......... 39%  168M 1s
 12150K .......... .......... .......... .......... .......... 39% 15.0M 1s
 12200K .......... .......... .......... .......... .......... 39% 37.4M 1s
 12250K .......... .......... .......... .......... .......... 39%  126M 1s
 12300K .......... .......... .......... .......... .......... 40%  129M 1s
 12350K .......... .......... .......... .......... .......... 40% 15.3M 1s
 12400K .......... .......... .......... .......... .......... 40%  137M 1s
 12450K .......... .......... .......... .......... .......... 40% 56.7M 1s
 12500K .......... .......... .......... .......... .......... 40% 17.6M 1s
 12550K .......... .......... .......... .......... .......... 40% 74.9M 1s
 12600K .......... .......... .......... .......... .......... 41%  152M 1s
 12650K .......... .......... .......... .......... .......... 41%  141M 1s
 12700K .......... .......... .......... .......... .......... 41%  149M 1s
 12750K .......... .......... .......... .......... .......... 41% 15.8M 1s
 12800K .......... .......... .......... .......... .......... 41%  144M 1s
 12850K .......... .......... .......... .......... .......... 41%  150M 1s
 12900K .......... .......... .......... .......... .......... 42%  152M 1s
 12950K .......... .......... .......... .......... .......... 42% 16.0M 1s
 13000K .......... .......... .......... .......... .......... 42%  136M 1s
 13050K .......... .......... .......... .......... .......... 42% 38.2M 1s
 13100K .......... .......... .......... .......... .......... 42% 41.4M 1s
 13150K .......... .......... .......... .......... .......... 42%  124M 1s
 13200K .......... .......... .......... .......... .......... 43%  153M 1s
 13250K .......... .......... .......... .......... .......... 43%  145M 1s
 13300K .......... .......... .......... .......... .......... 43%  156M 1s
 13350K .......... .......... .......... .......... .......... 43% 7.77M 1s
 13400K .......... .......... .......... .......... .......... 43% 16.4M 1s
 13450K .......... .......... .......... .......... .......... 43% 81.4M 1s
 13500K .......... .......... .......... .......... .......... 44%  213M 1s
 13550K .......... .......... .......... .......... .......... 44%  175M 1s
 13600K .......... .......... .......... .......... .......... 44%  221M 1s
 13650K .......... .......... .......... .......... .......... 44%  218M 1s
 13700K .......... .......... .......... .......... .......... 44%  213M 1s
 13750K .......... .......... .......... .......... .......... 44%  192M 1s
 13800K .......... .......... .......... .......... .......... 45%  140M 1s
 13850K .......... .......... .......... .......... .......... 45%  109M 1s
 13900K .......... .......... .......... .......... .......... 45%  214M 1s
 13950K .......... .......... .......... .......... .......... 45%  123M 1s
 14000K .......... .......... .......... .......... .......... 45%  213M 1s
 14050K .......... .......... .......... .......... .......... 45% 8.02M 1s
 14100K .......... .......... .......... .......... .......... 46% 6.44M 1s
 14150K .......... .......... .......... .......... .......... 46% 18.5M 1s
 14200K .......... .......... .......... .......... .......... 46% 81.1M 1s
 14250K .......... .......... .......... .......... .......... 46%  156M 1s
 14300K .......... .......... .......... .......... .......... 46% 24.6M 1s
 14350K .......... .......... .......... .......... .......... 46% 72.8M 1s
 14400K .......... .......... .......... .......... .......... 46%  144M 1s
 14450K .......... .......... .......... .......... .......... 47% 97.8M 1s
 14500K .......... .......... .......... .......... .......... 47% 22.1M 1s
 14550K .......... .......... .......... .......... .......... 47% 22.7M 1s
 14600K .......... .......... .......... .......... .......... 47%  151M 1s
 14650K .......... .......... .......... .......... .......... 47%  146M 1s
 14700K .......... .......... .......... .......... .......... 47%  154M 1s
 14750K .......... .......... .......... .......... .......... 48%  129M 1s
 14800K .......... .......... .......... .......... .......... 48%  133M 1s
 14850K .......... .......... .......... .......... .......... 48%  138M 1s
 14900K .......... .......... .......... .......... .......... 48%  152M 1s
 14950K .......... .......... .......... .......... .......... 48%  133M 1s
 15000K .......... .......... .......... .......... .......... 48%  144M 1s
 15050K .......... .......... .......... .......... .......... 49%  152M 1s
 15100K .......... .......... .......... .......... .......... 49% 23.2M 1s
 15150K .......... .......... .......... .......... .......... 49% 14.9M 1s
 15200K .......... .......... .......... .......... .......... 49% 20.1M 1s
 15250K .......... .......... .......... .......... .......... 49% 89.6M 1s
 15300K .......... .......... .......... .......... .......... 49%  159M 1s
 15350K .......... .......... .......... .......... .......... 50%  134M 1s
 15400K .......... .......... .......... .......... .......... 50%  144M 1s
 15450K .......... .......... .......... .......... .......... 50%  162M 1s
 15500K .......... .......... .......... .......... .......... 50%  145M 1s
 15550K .......... .......... .......... .......... .......... 50%  130M 1s
 15600K .......... .......... .......... .......... .......... 50%  149M 1s
 15650K .......... .......... .......... .......... .......... 51% 18.5M 1s
 15700K .......... .......... .......... .......... .......... 51% 17.3M 1s
 15750K .......... .......... .......... .......... .......... 51% 40.8M 1s
 15800K .......... .......... .......... .......... .......... 51%  148M 1s
 15850K .......... .......... .......... .......... .......... 51%  148M 1s
 15900K .......... .......... .......... .......... .......... 51%  144M 1s
 15950K .......... .......... .......... .......... .......... 52%  129M 1s
 16000K .......... .......... .......... .......... .......... 52%  161M 1s
 16050K .......... .......... .......... .......... .......... 52%  140M 1s
 16100K .......... .......... .......... .......... .......... 52%  147M 1s
 16150K .......... .......... .......... .......... .......... 52%  136M 1s
 16200K .......... .......... .......... .......... .......... 52%  141M 1s
 16250K .......... .......... .......... .......... .......... 53%  154M 1s
 16300K .......... .......... .......... .......... .......... 53%  161M 1s
 16350K .......... .......... .......... .......... .......... 53%  335K 1s
 16400K .......... .......... .......... .......... .......... 53% 11.0M 1s
 16450K .......... .......... .......... .......... .......... 53% 6.42M 1s
 16500K .......... .......... .......... .......... .......... 53% 17.6M 1s
 16550K .......... .......... .......... .......... .......... 53% 18.3M 1s
 16600K .......... .......... .......... .......... .......... 54% 32.7M 1s
 16650K .......... .......... .......... .......... .......... 54%  230M 1s
 16700K .......... .......... .......... .......... .......... 54%  210M 1s
 16750K .......... .......... .......... .......... .......... 54%  199M 1s
 16800K .......... .......... .......... .......... .......... 54%  186M 1s
 16850K .......... .......... .......... .......... .......... 54%  222M 1s
 16900K .......... .......... .......... .......... .......... 55%  225M 1s
 16950K .......... .......... .......... .......... .......... 55%  237M 1s
 17000K .......... .......... .......... .......... .......... 55%  214M 1s
 17050K .......... .......... .......... .......... .......... 55%  223M 1s
 17100K .......... .......... .......... .......... .......... 55%  236M 1s
 17150K .......... .......... .......... .......... .......... 55% 4.55M 1s
 17200K .......... .......... .......... .......... .......... 56% 15.7M 1s
 17250K .......... .......... .......... .......... .......... 56% 17.3M 1s
 17300K .......... .......... .......... .......... .......... 56% 24.9M 1s
 17350K .......... .......... .......... .......... .......... 56%  214M 1s
 17400K .......... .......... .......... .......... .......... 56%  207M 1s
 17450K .......... .......... .......... .......... .......... 56%  212M 1s
 17500K .......... .......... .......... .......... .......... 57%  220M 1s
 17550K .......... .......... .......... .......... .......... 57%  236M 1s
 17600K .......... .......... .......... .......... .......... 57%  189M 1s
 17650K .......... .......... .......... .......... .......... 57% 17.6M 1s
 17700K .......... .......... .......... .......... .......... 57% 18.2M 1s
 17750K .......... .......... .......... .......... .......... 57% 29.1M 1s
 17800K .......... .......... .......... .......... .......... 58%  208M 1s
 17850K .......... .......... .......... .......... .......... 58%  199M 1s
 17900K .......... .......... .......... .......... .......... 58%  236M 1s
 17950K .......... .......... .......... .......... .......... 58%  243M 1s
 18000K .......... .......... .......... .......... .......... 58%  161M 1s
 18050K .......... .......... .......... .......... .......... 58%  230M 1s
 18100K .......... .......... .......... .......... .......... 59%  217M 1s
 18150K .......... .......... .......... .......... .......... 59%  239M 1s
 18200K .......... .......... .......... .......... .......... 59%  217M 1s
 18250K .......... .......... .......... .......... .......... 59%  230M 1s
 18300K .......... .......... .......... .......... .......... 59%  235M 1s
 18350K .......... .......... .......... .......... .......... 59%  225M 1s
 18400K .......... .......... .......... .......... .......... 59%  186M 1s
 18450K .......... .......... .......... .......... .......... 60%  240M 1s
 18500K .......... .......... .......... .......... .......... 60%  228M 1s
 18550K .......... .......... .......... .......... .......... 60%  237M 1s
 18600K .......... .......... .......... .......... .......... 60%  217M 1s
 18650K .......... .......... .......... .......... .......... 60%  218M 1s
 18700K .......... .......... .......... .......... .......... 60%  243M 1s
 18750K .......... .......... .......... .......... .......... 61%  230M 1s
 18800K .......... .......... .......... .......... .......... 61%  195M 1s
 18850K .......... .......... .......... .......... .......... 61%  241M 1s
 18900K .......... .......... .......... .......... .......... 61%  118M 1s
 18950K .......... .......... .......... .......... .......... 61%  190M 1s
 19000K .......... .......... .......... .......... .......... 61%  143M 1s
 19050K .......... .......... .......... .......... .......... 62%  163M 1s
 19100K .......... .......... .......... .......... .......... 62%  167M 1s
 19150K .......... .......... .......... .......... .......... 62%  169M 1s
 19200K .......... .......... .......... .......... .......... 62%  133M 1s
 19250K .......... .......... .......... .......... .......... 62%  164M 1s
 19300K .......... .......... .......... .......... .......... 62% 23.2M 1s
 19350K .......... .......... .......... .......... .......... 63% 38.6M 1s
 19400K .......... .......... .......... .......... .......... 63%  153M 1s
 19450K .......... .......... .......... .......... .......... 63%  150M 1s
 19500K .......... .......... .......... .......... .......... 63%  205M 1s
 19550K .......... .......... .......... .......... .......... 63%  164M 1s
 19600K .......... .......... .......... .......... .......... 63%  136M 1s
 19650K .......... .......... .......... .......... .......... 64%  159M 1s
 19700K .......... .......... .......... .......... .......... 64%  160M 1s
 19750K .......... .......... .......... .......... .......... 64% 14.1M 1s
 19800K .......... .......... .......... .......... .......... 64%  139M 1s
 19850K .......... .......... .......... .......... .......... 64% 5.89M 1s
 19900K .......... .......... .......... .......... .......... 64%  202M 1s
 19950K .......... .......... .......... .......... .......... 65%  207M 1s
 20000K .......... .......... .......... .......... .......... 65%  199M 1s
 20050K .......... .......... .......... .......... .......... 65%  232M 1s
 20100K .......... .......... .......... .......... .......... 65%  196M 1s
 20150K .......... .......... .......... .......... .......... 65%  237M 1s
 20200K .......... .......... .......... .......... .......... 65%  214M 1s
 20250K .......... .......... .......... .......... .......... 66%  210M 1s
 20300K .......... .......... .......... .......... .......... 66%  241M 1s
 20350K .......... .......... .......... .......... .......... 66%  243M 1s
 20400K .......... .......... .......... .......... .......... 66%  178M 0s
 20450K .......... .......... .......... .......... .......... 66%  232M 0s
 20500K .......... .......... .......... .......... .......... 66%  240M 0s
 20550K .......... .......... .......... .......... .......... 66%  226M 0s
 20600K .......... .......... .......... .......... .......... 67%  220M 0s
 20650K .......... .......... .......... .......... .......... 67%  196M 0s
 20700K .......... .......... .......... .......... .......... 67%  227M 0s
 20750K .......... .......... .......... .......... .......... 67%  217M 0s
 20800K .......... .......... .......... .......... .......... 67%  189M 0s
 20850K .......... .......... .......... .......... .......... 67%  230M 0s
 20900K .......... .......... .......... .......... .......... 68% 43.2M 0s
 20950K .......... .......... .......... .......... .......... 68% 15.6M 0s
 21000K .......... .......... .......... .......... .......... 68% 19.4M 0s
 21050K .......... .......... .......... .......... .......... 68%  121M 0s
 21100K .......... .......... .......... .......... .......... 68%  220M 0s
 21150K .......... .......... .......... .......... .......... 68%  230M 0s
 21200K .......... .......... .......... .......... .......... 69%  165M 0s
 21250K .......... .......... .......... .......... .......... 69%  235M 0s
 21300K .......... .......... .......... .......... .......... 69%  214M 0s
 21350K .......... .......... .......... .......... .......... 69%  213M 0s
 21400K .......... .......... .......... .......... .......... 69%  216M 0s
 21450K .......... .......... .......... .......... .......... 69%  209M 0s
 21500K .......... .......... .......... .......... .......... 70%  220M 0s
 21550K .......... .......... .......... .......... .......... 70%  227M 0s
 21600K .......... .......... .......... .......... .......... 70%  193M 0s
 21650K .......... .......... .......... .......... .......... 70%  216M 0s
 21700K .......... .......... .......... .......... .......... 70%  226M 0s
 21750K .......... .......... .......... .......... .......... 70% 5.23M 0s
 21800K .......... .......... .......... .......... .......... 71%  135M 0s
 21850K .......... .......... .......... .......... .......... 71%  239M 0s
 21900K .......... .......... .......... .......... .......... 71%  104M 0s
 21950K .......... .......... .......... .......... .......... 71%  168M 0s
 22000K .......... .......... .......... .......... .......... 71%  189M 0s
 22050K .......... .......... .......... .......... .......... 71%  220M 0s
 22100K .......... .......... .......... .......... .......... 72%  145M 0s
 22150K .......... .......... .......... .......... .......... 72%  236M 0s
 22200K .......... .......... .......... .......... .......... 72%  107M 0s
 22250K .......... .......... .......... .......... .......... 72%  218M 0s
 22300K .......... .......... .......... .......... .......... 72%  227M 0s
 22350K .......... .......... .......... .......... .......... 72%  224M 0s
 22400K .......... .......... .......... .......... .......... 72%  192M 0s
 22450K .......... .......... .......... .......... .......... 73% 6.48M 0s
 22500K .......... .......... .......... .......... .......... 73% 8.06M 0s
 22550K .......... .......... .......... .......... .......... 73% 20.3M 0s
 22600K .......... .......... .......... .......... .......... 73% 91.9M 0s
 22650K .......... .......... .......... .......... .......... 73%  162M 0s
 22700K .......... .......... .......... .......... .......... 73%  166M 0s
 22750K .......... .......... .......... .......... .......... 74% 41.1M 0s
 22800K .......... .......... .......... .......... .......... 74%  127M 0s
 22850K .......... .......... .......... .......... .......... 74%  167M 0s
 22900K .......... .......... .......... .......... .......... 74%  171M 0s
 22950K .......... .......... .......... .......... .......... 74%  177M 0s
 23000K .......... .......... .......... .......... .......... 74% 20.6M 0s
 23050K .......... .......... .......... .......... .......... 75% 40.2M 0s
 23100K .......... .......... .......... .......... .......... 75% 93.0M 0s
 23150K .......... .......... .......... .......... .......... 75%  151M 0s
 23200K .......... .......... .......... .......... .......... 75%  131M 0s
 23250K .......... .......... .......... .......... .......... 75%  160M 0s
 23300K .......... .......... .......... .......... .......... 75%  163M 0s
 23350K .......... .......... .......... .......... .......... 76%  186M 0s
 23400K .......... .......... .......... .......... .......... 76%  147M 0s
 23450K .......... .......... .......... .......... .......... 76%  183M 0s
 23500K .......... .......... .......... .......... .......... 76%  172M 0s
 23550K .......... .......... .......... .......... .......... 76%  165M 0s
 23600K .......... .......... .......... .......... .......... 76%  137M 0s
 23650K .......... .......... .......... .......... .......... 77%  160M 0s
 23700K .......... .......... .......... .......... .......... 77% 32.1M 0s
 23750K .......... .......... .......... .......... .......... 77% 13.3M 0s
 23800K .......... .......... .......... .......... .......... 77% 44.1M 0s
 23850K .......... .......... .......... .......... .......... 77%  156M 0s
 23900K .......... .......... .......... .......... .......... 77%  165M 0s
 23950K .......... .......... .......... .......... .......... 78%  175M 0s
 24000K .......... .......... .......... .......... .......... 78%  133M 0s
 24050K .......... .......... .......... .......... .......... 78%  166M 0s
 24100K .......... .......... .......... .......... .......... 78% 20.5M 0s
 24150K .......... .......... .......... .......... .......... 78% 29.6M 0s
 24200K .......... .......... .......... .......... .......... 78%  149M 0s
 24250K .......... .......... .......... .......... .......... 79%  152M 0s
 24300K .......... .......... .......... .......... .......... 79%  152M 0s
 24350K .......... .......... .......... .......... .......... 79%  122M 0s
 24400K .......... .......... .......... .......... .......... 79%  152M 0s
 24450K .......... .......... .......... .......... .......... 79%  158M 0s
 24500K .......... .......... .......... .......... .......... 79%  164M 0s
 24550K .......... .......... .......... .......... .......... 79%  132M 0s
 24600K .......... .......... .......... .......... .......... 80%  153M 0s
 24650K .......... .......... .......... .......... .......... 80%  155M 0s
 24700K .......... .......... .......... .......... .......... 80%  156M 0s
 24750K .......... .......... .......... .......... .......... 80%  127M 0s
 24800K .......... .......... .......... .......... .......... 80%  157M 0s
 24850K .......... .......... .......... .......... .......... 80%  177M 0s
 24900K .......... .......... .......... .......... .......... 81%  179M 0s
 24950K .......... .......... .......... .......... .......... 81% 29.1M 0s
 25000K .......... .......... .......... .......... .......... 81% 7.78M 0s
 25050K .......... .......... .......... .......... .......... 81% 16.3M 0s
 25100K .......... .......... .......... .......... .......... 81% 21.1M 0s
 25150K .......... .......... .......... .......... .......... 81% 17.0M 0s
 25200K .......... .......... .......... .......... .......... 82% 18.1M 0s
 25250K .......... .......... .......... .......... .......... 82% 51.3M 0s
 25300K .......... .......... .......... .......... .......... 82%  190M 0s
 25350K .......... .......... .......... .......... .......... 82%  195M 0s
 25400K .......... .......... .......... .......... .......... 82%  189M 0s
 25450K .......... .......... .......... .......... .......... 82%  218M 0s
 25500K .......... .......... .......... .......... .......... 83%  213M 0s
 25550K .......... .......... .......... .......... .......... 83%  168M 0s
 25600K .......... .......... .......... .......... .......... 83%  215M 0s
 25650K .......... .......... .......... .......... .......... 83%  213M 0s
 25700K .......... .......... .......... .......... .......... 83%  196M 0s
 25750K .......... .......... .......... .......... .......... 83%  178M 0s
 25800K .......... .......... .......... .......... .......... 84%  204M 0s
 25850K .......... .......... .......... .......... .......... 84%  211M 0s
 25900K .......... .......... .......... .......... .......... 84%  210M 0s
 25950K .......... .......... .......... .......... .......... 84%  171M 0s
 26000K .......... .......... .......... .......... .......... 84%  209M 0s
 26050K .......... .......... .......... .......... .......... 84%  220M 0s
 26100K .......... .......... .......... .......... .......... 85%  205M 0s
 26150K .......... .......... .......... .......... .......... 85%  195M 0s
 26200K .......... .......... .......... .......... .......... 85% 5.87M 0s
 26250K .......... .......... .......... .......... .......... 85%  196M 0s
 26300K .......... .......... .......... .......... .......... 85%  219M 0s
 26350K .......... .......... .......... .......... .......... 85%  180M 0s
 26400K .......... .......... .......... .......... .......... 86%  208M 0s
 26450K .......... .......... .......... .......... .......... 86%  216M 0s
 26500K .......... .......... .......... .......... .......... 86%  214M 0s
 26550K .......... .......... .......... .......... .......... 86%  191M 0s
 26600K .......... .......... .......... .......... .......... 86%  216M 0s
 26650K .......... .......... .......... .......... .......... 86%  214M 0s
 26700K .......... .......... .......... .......... .......... 86%  210M 0s
 26750K .......... .......... .......... .......... .......... 87%  175M 0s
 26800K .......... .......... .......... .......... .......... 87%  221M 0s
 26850K .......... .......... .......... .......... .......... 87%  213M 0s
 26900K .......... .......... .......... .......... .......... 87%  211M 0s
 26950K .......... .......... .......... .......... .......... 87%  194M 0s
 27000K .......... .......... .......... .......... .......... 87%  222M 0s
 27050K .......... .......... .......... .......... .......... 88%  188M 0s
 27100K .......... .......... .......... .......... .......... 88%  218M 0s
 27150K .......... .......... .......... .......... .......... 88%  182M 0s
 27200K .......... .......... .......... .......... .......... 88%  209M 0s
 27250K .......... .......... .......... .......... .......... 88% 7.27M 0s
 27300K .......... .......... .......... .......... .......... 88% 21.7M 0s
 27350K .......... .......... .......... .......... .......... 89% 17.1M 0s
 27400K .......... .......... .......... .......... .......... 89% 6.31M 0s
 27450K .......... .......... .......... .......... .......... 89% 15.6M 0s
 27500K .......... .......... .......... .......... .......... 89% 18.9M 0s
 27550K .......... .......... .......... .......... .......... 89%  102M 0s
 27600K .......... .......... .......... .......... .......... 89%  214M 0s
 27650K .......... .......... .......... .......... .......... 90%  199M 0s
 27700K .......... .......... .......... .......... .......... 90%  190M 0s
 27750K .......... .......... .......... .......... .......... 90%  186M 0s
 27800K .......... .......... .......... .......... .......... 90%  213M 0s
 27850K .......... .......... .......... .......... .......... 90% 5.86M 0s
 27900K .......... .......... .......... .......... .......... 90%  194M 0s
 27950K .......... .......... .......... .......... .......... 91%  181M 0s
 28000K .......... .......... .......... .......... .......... 91%  193M 0s
 28050K .......... .......... .......... .......... .......... 91%  212M 0s
 28100K .......... .......... .......... .......... .......... 91%  210M 0s
 28150K .......... .......... .......... .......... .......... 91%  186M 0s
 28200K .......... .......... .......... .......... .......... 91%  223M 0s
 28250K .......... .......... .......... .......... .......... 92%  218M 0s
 28300K .......... .......... .......... .......... .......... 92%  207M 0s
 28350K .......... .......... .......... .......... .......... 92%  188M 0s
 28400K .......... .......... .......... .......... .......... 92%  214M 0s
 28450K .......... .......... .......... .......... .......... 92%  222M 0s
 28500K .......... .......... .......... .......... .......... 92%  202M 0s
 28550K .......... .......... .......... .......... .......... 92%  190M 0s
 28600K .......... .......... .......... .......... .......... 93%  215M 0s
 28650K .......... .......... .......... .......... .......... 93%  149M 0s
 28700K .......... .......... .......... .......... .......... 93%  242M 0s
 28750K .......... .......... .......... .......... .......... 93%  221M 0s
 28800K .......... .......... .......... .......... .......... 93%  189M 0s
 28850K .......... .......... .......... .......... .......... 93%  240M 0s
 28900K .......... .......... .......... .......... .......... 94%  199M 0s
 28950K .......... .......... .......... .......... .......... 94%  231M 0s
 29000K .......... .......... .......... .......... .......... 94%  216M 0s
 29050K .......... .......... .......... .......... .......... 94%  208M 0s
 29100K .......... .......... .......... .......... .......... 94%  235M 0s
 29150K .......... .......... .......... .......... .......... 94%  236M 0s
 29200K .......... .......... .......... .......... .......... 95%  184M 0s
 29250K .......... .......... .......... .......... .......... 95%  239M 0s
 29300K .......... .......... .......... .......... .......... 95%  225M 0s
 29350K .......... .......... .......... .......... .......... 95%  224M 0s
 29400K .......... .......... .......... .......... .......... 95%  219M 0s
 29450K .......... .......... .......... .......... .......... 95%  234M 0s
 29500K .......... .......... .......... .......... .......... 96%  230M 0s
 29550K .......... .......... .......... .......... .......... 96%  206M 0s
 29600K .......... .......... .......... .......... .......... 96%  189M 0s
 29650K .......... .......... .......... .......... .......... 96%  235M 0s
 29700K .......... .......... .......... .......... .......... 96%  220M 0s
 29750K .......... .......... .......... .......... .......... 96%  222M 0s
 29800K .......... .......... .......... .......... .......... 97%  209M 0s
 29850K .......... .......... .......... .......... .......... 97%  214M 0s
 29900K .......... .......... .......... .......... .......... 97%  224M 0s
 29950K .......... .......... .......... .......... .......... 97%  239M 0s
 30000K .......... .......... .......... .......... .......... 97% 7.10M 0s
 30050K .......... .......... .......... .......... .......... 97% 20.4M 0s
 30100K .......... .......... .......... .......... .......... 98% 5.43M 0s
 30150K .......... .......... .......... .......... .......... 98%  141M 0s
 30200K .......... .......... .......... .......... .......... 98%  156M 0s
 30250K .......... .......... .......... .......... .......... 98% 52.3M 0s
 30300K .......... .......... .......... .......... .......... 98% 39.0M 0s
 30350K .......... .......... .......... .......... .......... 98% 55.2M 0s
 30400K .......... .......... .......... .......... .......... 99% 48.6M 0s
 30450K .......... .......... .......... .......... .......... 99% 40.2M 0s
 30500K .......... .......... .......... .......... .......... 99%  154M 0s
 30550K .......... .......... .......... .......... .......... 99% 27.9M 0s
 30600K .......... .......... .......... .......... .......... 99%  135M 0s
 30650K .......... .......... .......... .......... .......... 99%  173M 0s
 30700K .......... .......... .......... .......... .......... 99% 30.4M 0s
 30750K ...                                                   100% 59.1M=1.2s

2021-08-22 17:57:43 (25.7 MB/s) - ‘scarf_datasets/tenx_5K_pbmc_rnaseq/data.zarr.tar.gz’ saved [31491651/31491651]

INFO: Download finished! File saved here: scarf_datasets/tenx_5K_pbmc_rnaseq/data.zarr.tar.gz
time: 11.7 s (started: 2021-08-22 17:57:33 +00:00)
[4]:
ds = scarf.DataStore('scarf_datasets/tenx_5K_pbmc_rnaseq/data.zarr')
ds.plot_layout(layout_key='RNA_UMAP', color_by='RNA_cluster')
../_images/vignettes_cell_subsampling_tutorial_7_0.png
time: 1.76 s (started: 2021-08-22 17:57:45 +00:00)

3) Run TopACeDo downsampler

UMAP, clustering and marker identification together allow a good understanding of cellular diversity. However, one can still choose from a plethora of other analysis on the data. For example, identification of cell differentiation trajectories. One of the major challenges to run these analysis could be the size of the data. Scarf performs a topology conserving downsampling of the data based on the cell neighbourhood graph. This downsampling aims to maximize the heterogeneity while sampling cells from the data.

Here we run the TopACeDo downsampling algorithm that leverages Scarf’s KNN graph to perform a manifold preserving subsampling of cells. The subsampler can be invoked directly from Scarf’s DataStore object.

[5]:
ds.run_topacedo_sampler(cluster_key='RNA_cluster', max_sampling_rate=0.1)
Constructing graph from dendrogram: 100%|██████████| 3939/3939 [00:00<00:00, 21125.23it/s]
INFO: 384 cells (9.75%) sub-sampled. Subsample to Seed (165 cells) ratio: 2.327
INFO: Sketched cells saved under column 'RNA_sketched'
INFO: Cell neighbourhood densities saved under column: 'RNA_cell_density'
INFO: Mean SNN values saved under column: 'RNA_snn_value'
INFO: Seed cells saved under column: 'RNA_sketch_seeds'
time: 2.27 s (started: 2021-08-22 17:57:47 +00:00)

As a result of subsampling the subsampled cells are marked True under the cell metadata column RNA_sketched. We can visualize these cells using plot_layout

[6]:
ds.plot_layout(layout_key='RNA_UMAP', color_by='RNA_cluster', subselection_key='RNA_sketched')
../_images/vignettes_cell_subsampling_tutorial_12_0.png
time: 728 ms (started: 2021-08-22 17:57:49 +00:00)

It may also be interesting to visualize the cells that were marked as seed cells used when PCST was run. These cells are marked under the column RNA_sketch_seeds

[7]:
ds.plot_layout(layout_key='RNA_UMAP', color_by='RNA_cluster', subselection_key='RNA_sketch_seeds')
../_images/vignettes_cell_subsampling_tutorial_14_0.png
time: 703 ms (started: 2021-08-22 17:57:50 +00:00)

4) Intermediate parameters of downsampling

To identify the seed cells, the subsampling algorithm calculates cell densities based on neighbourhood degrees. Regions of higher cell density get a sampling penalty. The neighbourhood degree of individual cells are stored under the column RNA_cell_density

[8]:
ds.plot_layout(layout_key='RNA_UMAP', color_by='RNA_cell_density')
../_images/vignettes_cell_subsampling_tutorial_17_0.png
time: 1.19 s (started: 2021-08-22 17:57:51 +00:00)

The dowsampling algorithm also identififes regions of the graph where cells form tightly connected groups by calculating mean shared nearest neighbours of each cell’s nieghbours. The tightly connected regions get a sampling award. These values can be accessed from under the cell metadata column RNA_snn_value

[9]:
ds.plot_layout(layout_key='RNA_UMAP', color_by='RNA_snn_value')
../_images/vignettes_cell_subsampling_tutorial_19_0.png
time: 1.11 s (started: 2021-08-22 17:57:52 +00:00)

That is all for this vignette.