From this comment on #182:

may advise starting with ATRT’s and SMARCB1 deletions

Here, I’m looking at the output of 01-prepare-cn-file.R to see if we recover that information in the segment to gene mapping. We’re going to get the data from a pull request/branch that is currently open. This will get whatever the current files are for that branch.

wget --quiet -N -P results https://raw.githubusercontent.com/jaclyn-taroni/OpenPBTA-analysis/186-both-formats/analyses/focal-cn-file-preparation/results/cnvkit_annotated_cn_autosomes.tsv.gz
wget --quiet -N -P results https://raw.githubusercontent.com/jaclyn-taroni/OpenPBTA-analysis/186-both-formats/analyses/focal-cn-file-preparation/results/controlfreec_annotated_cn_autosomes.tsv.gz 
`%>%` <- dplyr::`%>%`
Registered S3 method overwritten by 'dplyr':
  method           from
  print.rowwise_df     

Read in data

# read in the output of `01-prepare-cn-file.R`
cnvkit_df <- readr::read_tsv(file.path("results", 
                                       "cnvkit_annotated_cn_autosomes.tsv.gz"))
Parsed with column specification:
cols(
  biospecimen_id = col_character(),
  status = col_character(),
  copy_number = col_double(),
  ploidy = col_double(),
  gene_symbol = col_character(),
  cytoband = col_character(),
  ensembl = col_character()
)
controlfreec_df <- readr::read_tsv(file.path("results",
                                             "controlfreec_annotated_cn_autosomes.tsv.gz"))
Parsed with column specification:
cols(
  biospecimen_id = col_character(),
  status = col_character(),
  copy_number = col_double(),
  ploidy = col_double(),
  gene_symbol = col_character(),
  cytoband = col_character(),
  ensembl = col_character()
)
# read in the clinical file that has the disease type information
histologies_df <- readr::read_tsv(file.path("..", "..", "data", 
                                            "pbta-histologies.tsv"))
Parsed with column specification:
cols(
  .default = col_character(),
  OS_days = col_double(),
  age_last_update_days = col_double(),
  normal_fraction = col_double(),
  tumor_fraction = col_double(),
  tumor_ploidy = col_double()
)
See spec(...) for full column specifications.

Look at copy number information for ATRT

# get ATRT biospecimen identifiers
atrt_specimens <- histologies_df %>%
  dplyr::filter(disease_type_new == "Atypical Teratoid Rhabdoid Tumor") %>%
  dplyr::pull(Kids_First_Biospecimen_ID)

CNVkit

# filter the gene-level CN information to ATRT samples and gene symbols
# containing 'SMARC'
cnvkit_atrt <- cnvkit_df %>%
  dplyr::filter(biospecimen_id %in% atrt_specimens,
                grepl("SMARCB1", gene_symbol))
cnvkit_atrt
table(cnvkit_atrt$status)

loss 
  27 

ControlFreeC

controlfreec_atrt <- controlfreec_df %>%
  dplyr::filter(biospecimen_id %in% atrt_specimens,
                grepl("SMARCB1", gene_symbol))
controlfreec_atrt
table(controlfreec_atrt$status)

gain loss 
   1   22 

Cursory comparison

Find the one sample that reports a gain in ControlFreeC and look at that sample in CNVkit.

controlfreec_gain_sample <- controlfreec_atrt %>%
  dplyr::filter(status == "gain") %>%
  dplyr::pull(biospecimen_id)

cnvkit_atrt %>% dplyr::filter(biospecimen_id == controlfreec_gain_sample)

CNVkit marks this as a loss.

Check which samples are in both.

intersect(controlfreec_atrt$biospecimen_id, cnvkit_atrt$biospecimen_id)
 [1] "BS_0EN5R1AP" "BS_12ZB7R6A" "BS_1C4WCNQF" "BS_5WK2KXYW" "BS_6GN1FGTB" "BS_74A1TB03"
 [7] "BS_8WJR4AA3" "BS_9KDA3HG6" "BS_A94A7EJ4" "BS_CKY2TTXG" "BS_DE26D072" "BS_GTAJFTTR"
[13] "BS_JDMM2XG4" "BS_NDSWS9TS" "BS_NXZSD2KK" "BS_P7CY04E7" "BS_QMHND3QK" "BS_R5G3QP11"
[19] "BS_SCQNN2A2" "BS_SWHQ8FDW" "BS_W23ERYW3" "BS_WCNPE0AC"
length(unique(cnvkit_atrt$biospecimen_id))
[1] 25
length(unique(controlfreec_atrt$biospecimen_id))
[1] 22
LS0tCnRpdGxlOiAiU2VnbWVudCB0byBnZW5lIG1hcHBpbmcgaW4gQVRSVCIKb3V0cHV0OiBodG1sX25vdGVib29rCmF1dGhvcjogSi4gVGFyb25pIGZvciBBTFNGIENDREwKZGF0ZTogMjAxOQotLS0KCkZyb20gW3RoaXMgY29tbWVudF0oaHR0cHM6Ly9naXRodWIuY29tL0FsZXhzTGVtb25hZGUvT3BlblBCVEEtYW5hbHlzaXMvcHVsbC8xODIjZGlzY3Vzc2lvbl9yMzQwNTg3OTY4KSBvbiAjMTgyOgoKPiBtYXkgYWR2aXNlIHN0YXJ0aW5nIHdpdGggQVRSVCdzIGFuZCBTTUFSQ0IxIGRlbGV0aW9ucwoKSGVyZSwgSSdtIGxvb2tpbmcgYXQgdGhlIG91dHB1dCBvZiBgMDEtcHJlcGFyZS1jbi1maWxlLlJgIHRvIHNlZSBpZiB3ZSByZWNvdmVyIHRoYXQgaW5mb3JtYXRpb24gaW4gdGhlIHNlZ21lbnQgdG8gZ2VuZSBtYXBwaW5nLgpXZSdyZSBnb2luZyB0byBnZXQgdGhlIGRhdGEgZnJvbSBhIHB1bGwgcmVxdWVzdC9icmFuY2ggdGhhdCBpcyBjdXJyZW50bHkgb3Blbi4KVGhpcyB3aWxsIGdldCB3aGF0ZXZlciB0aGUgY3VycmVudCBmaWxlcyBhcmUgZm9yIHRoYXQgYnJhbmNoLgoKYGBge3NofQp3Z2V0IC0tcXVpZXQgLU4gLVAgcmVzdWx0cyBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vamFjbHluLXRhcm9uaS9PcGVuUEJUQS1hbmFseXNpcy8xODYtYm90aC1mb3JtYXRzL2FuYWx5c2VzL2ZvY2FsLWNuLWZpbGUtcHJlcGFyYXRpb24vcmVzdWx0cy9jbnZraXRfYW5ub3RhdGVkX2NuX2F1dG9zb21lcy50c3YuZ3oKd2dldCAtLXF1aWV0IC1OIC1QIHJlc3VsdHMgaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2phY2x5bi10YXJvbmkvT3BlblBCVEEtYW5hbHlzaXMvMTg2LWJvdGgtZm9ybWF0cy9hbmFseXNlcy9mb2NhbC1jbi1maWxlLXByZXBhcmF0aW9uL3Jlc3VsdHMvY29udHJvbGZyZWVjX2Fubm90YXRlZF9jbl9hdXRvc29tZXMudHN2Lmd6IApgYGAKCmBgYHtyfQpgJT4lYCA8LSBkcGx5cjo6YCU+JWAKYGBgCgojIyMgUmVhZCBpbiBkYXRhCgpgYGB7cn0KIyByZWFkIGluIHRoZSBvdXRwdXQgb2YgYDAxLXByZXBhcmUtY24tZmlsZS5SYApjbnZraXRfZGYgPC0gcmVhZHI6OnJlYWRfdHN2KGZpbGUucGF0aCgicmVzdWx0cyIsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY252a2l0X2Fubm90YXRlZF9jbl9hdXRvc29tZXMudHN2Lmd6IikpCmNvbnRyb2xmcmVlY19kZiA8LSByZWFkcjo6cmVhZF90c3YoZmlsZS5wYXRoKCJyZXN1bHRzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbnRyb2xmcmVlY19hbm5vdGF0ZWRfY25fYXV0b3NvbWVzLnRzdi5neiIpKQojIHJlYWQgaW4gdGhlIGNsaW5pY2FsIGZpbGUgdGhhdCBoYXMgdGhlIGRpc2Vhc2UgdHlwZSBpbmZvcm1hdGlvbgpoaXN0b2xvZ2llc19kZiA8LSByZWFkcjo6cmVhZF90c3YoZmlsZS5wYXRoKCIuLiIsICIuLiIsICJkYXRhIiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBidGEtaGlzdG9sb2dpZXMudHN2IikpCmBgYAoKIyMjIExvb2sgYXQgY29weSBudW1iZXIgaW5mb3JtYXRpb24gZm9yIEFUUlQKCmBgYHtyfQojIGdldCBBVFJUIGJpb3NwZWNpbWVuIGlkZW50aWZpZXJzCmF0cnRfc3BlY2ltZW5zIDwtIGhpc3RvbG9naWVzX2RmICU+JQogIGRwbHlyOjpmaWx0ZXIoZGlzZWFzZV90eXBlX25ldyA9PSAiQXR5cGljYWwgVGVyYXRvaWQgUmhhYmRvaWQgVHVtb3IiKSAlPiUKICBkcGx5cjo6cHVsbChLaWRzX0ZpcnN0X0Jpb3NwZWNpbWVuX0lEKQpgYGAKCiMjIyMgQ05Wa2l0CgpgYGB7cn0KIyBmaWx0ZXIgdGhlIGdlbmUtbGV2ZWwgQ04gaW5mb3JtYXRpb24gdG8gQVRSVCBzYW1wbGVzIGFuZCBnZW5lIHN5bWJvbHMKIyBjb250YWluaW5nICdTTUFSQycKY252a2l0X2F0cnQgPC0gY252a2l0X2RmICU+JQogIGRwbHlyOjpmaWx0ZXIoYmlvc3BlY2ltZW5faWQgJWluJSBhdHJ0X3NwZWNpbWVucywKICAgICAgICAgICAgICAgIGdyZXBsKCJTTUFSQ0IxIiwgZ2VuZV9zeW1ib2wpKQpjbnZraXRfYXRydApgYGAKCmBgYHtyfQp0YWJsZShjbnZraXRfYXRydCRzdGF0dXMpCmBgYAoKIyMjIyBDb250cm9sRnJlZUMKCmBgYHtyfQpjb250cm9sZnJlZWNfYXRydCA8LSBjb250cm9sZnJlZWNfZGYgJT4lCiAgZHBseXI6OmZpbHRlcihiaW9zcGVjaW1lbl9pZCAlaW4lIGF0cnRfc3BlY2ltZW5zLAogICAgICAgICAgICAgICAgZ3JlcGwoIlNNQVJDQjEiLCBnZW5lX3N5bWJvbCkpCmNvbnRyb2xmcmVlY19hdHJ0CmBgYAoKYGBge3J9CnRhYmxlKGNvbnRyb2xmcmVlY19hdHJ0JHN0YXR1cykKYGBgCgojIyMjIEN1cnNvcnkgY29tcGFyaXNvbgoKRmluZCB0aGUgb25lIHNhbXBsZSB0aGF0IHJlcG9ydHMgYSBgZ2FpbmAgaW4gQ29udHJvbEZyZWVDIGFuZCBsb29rIGF0IHRoYXQgc2FtcGxlIGluIENOVmtpdC4KCmBgYHtyfQpjb250cm9sZnJlZWNfZ2Fpbl9zYW1wbGUgPC0gY29udHJvbGZyZWVjX2F0cnQgJT4lCiAgZHBseXI6OmZpbHRlcihzdGF0dXMgPT0gImdhaW4iKSAlPiUKICBkcGx5cjo6cHVsbChiaW9zcGVjaW1lbl9pZCkKCmNudmtpdF9hdHJ0ICU+JSBkcGx5cjo6ZmlsdGVyKGJpb3NwZWNpbWVuX2lkID09IGNvbnRyb2xmcmVlY19nYWluX3NhbXBsZSkKYGBgCgpDTlZraXQgbWFya3MgdGhpcyBhcyBhIGxvc3MuCgpDaGVjayB3aGljaCBzYW1wbGVzIGFyZSBpbiBib3RoLgoKYGBge3J9CmludGVyc2VjdChjb250cm9sZnJlZWNfYXRydCRiaW9zcGVjaW1lbl9pZCwgY252a2l0X2F0cnQkYmlvc3BlY2ltZW5faWQpCmBgYAoKYGBge3J9Cmxlbmd0aCh1bmlxdWUoY252a2l0X2F0cnQkYmlvc3BlY2ltZW5faWQpKQpgYGAKCmBgYHtyfQpsZW5ndGgodW5pcXVlKGNvbnRyb2xmcmVlY19hdHJ0JGJpb3NwZWNpbWVuX2lkKSkKYGBgCg==