Skip to content

Commit eca5109

Browse files
Add fraction with 20X coverage VA quality measure
1 parent 56c2a6e commit eca5109

File tree

2 files changed

+18
-19
lines changed

2 files changed

+18
-19
lines changed

graphql-api/src/graphql/resolvers/va.spec.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ describe('resolveVACohortAlleleFrequency', () => {
7676
exome: exomeEsDocument,
7777
genome: genomeEsDocument,
7878
joint: { fafmax: { faf95_max: 0.234, faf95_max_gen_anc: 'amr' } },
79-
coverage: { exome: { mean: 0.345 }, genome: { mean: 0.456 } },
79+
coverage: { exome: { mean: 0.345, over_20: 0.456 }, genome: { mean: 0.111, over_20: 0.222 } },
8080
}
8181

8282
test('parses a single CohortAlleleFrequency exome correctly', async () => {
@@ -106,7 +106,7 @@ describe('resolveVACohortAlleleFrequency', () => {
106106
subcohortFrequency: [],
107107
qualityMeasures: {
108108
meanDepth: 0.345,
109-
fractionCoverage20x: null,
109+
fractionCoverage20x: 0.456,
110110
monoallelic: null,
111111
qcFilters: null,
112112
lowComplexityRegion: null,
@@ -146,8 +146,8 @@ describe('resolveVACohortAlleleFrequency', () => {
146146
},
147147
subcohortFrequency: [],
148148
qualityMeasures: {
149-
meanDepth: 0.456,
150-
fractionCoverage20x: null,
149+
meanDepth: 0.111,
150+
fractionCoverage20x: 0.222,
151151
monoallelic: null,
152152
qcFilters: null,
153153
lowComplexityRegion: null,

graphql-api/src/graphql/resolvers/va.ts

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ type Subset = {
199199
homozygote_count: number
200200
grpMax?: GrpMaxFAF95
201201
jointGrpMax?: GrpMaxFAF95
202-
meanDepth: number
202+
qualityMeasures: QualityMeasures
203203
}
204204

205205
const GNOMAD_V4_DERIVATION = {
@@ -281,18 +281,6 @@ const resolveVACohortAlleleFrequency = (
281281
hemizygotes: subset.hemizygote_count !== undefined ? subset.hemizygote_count : null,
282282
}
283283

284-
// const coverage = obj.coverage.exome && obj.coverage.exome
285-
const qualityMeasures = {
286-
meanDepth: subset.meanDepth,
287-
fractionCoverage20x: null, // TK
288-
qcFilters: null, // TK
289-
monoallelic: null, // TK
290-
lowComplexityRegion: null, // TK
291-
lowConfidenceLossOfFunctionError: null, // TK
292-
lossOfFunctionWarning: null, // TK
293-
heterozygousSkewedAlleleCount: null, // TK
294-
}
295-
296284
return {
297285
id,
298286
label,
@@ -304,7 +292,7 @@ const resolveVACohortAlleleFrequency = (
304292
alleleFrequency: subset.ac / subset.an,
305293
cohort,
306294
ancillaryResults,
307-
qualityMeasures,
295+
qualityMeasures: subset.qualityMeasures,
308296
}
309297
}
310298

@@ -410,6 +398,17 @@ const resolveVACohortAlleleFrequencies = async (
410398
}
411399
const coverage = obj.coverage[frequencyField]
412400

401+
const qualityMeasures = {
402+
meanDepth: coverage && coverage.mean ? coverage.mean : null,
403+
fractionCoverage20x: coverage && coverage.over_20 ? coverage.over_20 : null,
404+
monoallelic: null,
405+
qcFilters: null,
406+
lowComplexityRegion: null,
407+
lowConfidenceLossOfFunctionError: null,
408+
lossOfFunctionWarning: null,
409+
heterozygousSkewedAlleleCount: null,
410+
}
411+
413412
const fullSet: Subset = {
414413
ac: frequencies.ac,
415414
an: frequencies.an,
@@ -428,7 +427,7 @@ const resolveVACohortAlleleFrequencies = async (
428427
confidenceInterval: 0.95,
429428
}
430429
: undefined,
431-
meanDepth: coverage && coverage.mean ? coverage.mean : null,
430+
qualityMeasures,
432431
}
433432
const subsets = [fullSet, ...(frequencies.ancestry_groups as Subset[])]
434433
const cohortsWithoutSubcohorts = subsets.map((subset) =>

0 commit comments

Comments
 (0)