Skip to content

Commit b3569e1

Browse files
authored
Update workflow
1 parent 40ee60c commit b3569e1

File tree

2 files changed

+14
-8
lines changed

2 files changed

+14
-8
lines changed

.github/workflows/checks.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
shell: bash -l {0}
1111
steps:
1212
- uses: actions/checkout@v3
13-
- uses: actions/setup-python@v3
13+
- uses: actions/setup-python@v4
1414
with:
1515
python-version: '3.10.4'
1616
- name: Install flake8 and pytest

README.md

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![](https://img.shields.io/static/v1?label=Language&message=Python&color=%23fc3)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
44
[![](https://img.shields.io/static/v1?label=Type&message=Software&color=darkgoldenrod)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
5-
[![](https://img.shields.io/static/v1?label=Version&message=0.0.2a&color=purple)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
5+
[![](https://img.shields.io/static/v1?label=Version&message=0.0.3a&color=seagreen)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
66
[![](https://img.shields.io/static/v1?label=Lifecycle&message=experimental&color=red)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
77

88
**Purpose**: To test your fundamental python programming skills.
@@ -36,13 +36,15 @@ Good luck and have fun! 😊
3636

3737
[![](https://img.shields.io/static/v1?label=Runs%20on&message=Ubuntu%2022.04%20LTS&color=%235e2750)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
3838
[![](https://img.shields.io/static/v1?label=Python-Version&message=3.10.4&color=darkturquoise)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
39-
[![](https://img.shields.io/static/v1?label=Packages-allowed&message=None&color=lightgray)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
39+
[![](https://img.shields.io/static/v1?label=Packages-allowed&message=Pandas,Numpy&color=lightblue)](https://brnteam.notion.site/e8c045b812d842f8bca8e339d22c38ad?v=6245e8becaa641bcafd276e5d910e402)
4040

4141

4242
**Assessment Premise**:
4343

4444
You are a new bioinformatics programmer 🤓 in the Genomics Division at BioResLabs INC 🏢. Your role is to study the link between mutations and cancer 🧬. The senior bioinformatician needs your help analyzing mutations in breast cancer tumors 💻. She asks you to **write a python script** called `utils.py` which contains functions needed for the analysis.
4545

46+
**Note**: Your code must not rely on any packages except for [Numpy](https://numpy.org/), [Pandas](https://pandas.pydata.org/), and their dependencies.
47+
4648
_The following tasks describe the functions that should be included in `utils.py`._
4749

4850
### Task 1: A Universal Gene ID Converter
@@ -123,7 +125,7 @@ The senior bioinformatician has hypothesized that [single nucleotide variants (S
123125
2. **Arguments**:
124126
- `cancer`: A string containing the tumor DNA sequence
125127
- `normal`: A string containing the normal tissue DNA sequence
126-
3. **Returns**: A `DataFrame` which contains the following columns:
128+
3. **Returns**: A Pandas `DataFrame` which contains the following columns:
127129
- `position`: gives the position of an alteration within the input sequence
128130
- `cancer`: gives the cancer base at that position
129131
- `normal`: gives the normal base at that position
@@ -323,7 +325,7 @@ Thus far, you have built functions to identify variants and convert between DNA,
323325
2. **Arguments**:
324326
- `cancer`: A string containing the tumor DNA sequence
325327
- `normal`: A string containing the normal tissue DNA sequence
326-
3. **Returns**: A `DataFrame` which contains the following columns:
328+
3. **Returns**: A Pandas `DataFrame` which contains the following columns:
327329
- `codon_number`: gives the position of an altered codon within the input sequence
328330
- `cancer`: gives the cancer amino acid at that position
329331
- `normal`: gives the normal amino acid at that position
@@ -396,11 +398,11 @@ In some cases, SNVs can lead to a premature STOP codon. This is called a ["nonse
396398

397399
1. **Name**: Needs to be a function called `find_nonsense()`
398400
2. **Arguments**:
399-
- `sequences`: a `DataFrame` containing three columns:
401+
- `sequences`: a Pandas `DataFrame` containing three columns:
400402
- `gene_id`: The ID of the gene (can be either Ensembl or Entrez)
401403
- `cancer`: The sequence of the gene in the cancer sample
402404
- `normal`: The sequence of the gene in the normal sample
403-
3. **Returns**: a `DataFrame` with one entry per nonsense mutation, containing the following columns:
405+
3. **Returns**: a Pandas `DataFrame` with one entry per nonsense mutation, containing the following columns:
404406
- `gene_id`: The gene ID originally provided by the user for this gene
405407
- `gene_symbol`: The symbol of the supplied gene
406408
- `codon_number`: gives the position of an altered codon within the input sequence
@@ -421,6 +423,8 @@ In some cases, SNVs can lead to a premature STOP codon. This is called a ["nonse
421423
Input:
422424

423425
```python
426+
import pandas as pd
427+
424428
sequences = pd.DataFrame(
425429
{
426430
"gene_id": ["ENSG00000147889", 8243, 675],
@@ -453,6 +457,8 @@ Output:
453457
Input:
454458

455459
```python
460+
import pandas as pd
461+
456462
sequences = pd.DataFrame(
457463
{
458464
"gene_id": ["ABCD"], "cancer": ["AAAGTGGAGGTGTAUATCAAACCC"],
@@ -479,7 +485,7 @@ Output (error text may vary):
479485

480486
### Useful details
481487

482-
1. Your code must not depend on any packages outside of base python v3.10.4
488+
1. Your code must not depend on any packages outside of base python v3.10.4, Pandas, and Numpy.
483489
2. To test your code locally, run `pytest` from the command line
484490
3. To lint your code locally, run `flake8 .` from the command line
485491
4. If you are feeling uncomfortable working with the BRN Skill Assessment platform, please consider going back to the python-based tutorial and completing it. If you are still getting stuck, please check the [Getting help](#getting-help) section.

0 commit comments

Comments
 (0)