Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/samuelhoover/peer-critiques-anonymizer
Automatically anonymize, aggregate, and distribute peer critiques for ChE 401/402 (senior lab).
https://github.com/samuelhoover/peer-critiques-anonymizer
Last synced: 2 days ago
JSON representation
Automatically anonymize, aggregate, and distribute peer critiques for ChE 401/402 (senior lab).
- Host: GitHub
- URL: https://github.com/samuelhoover/peer-critiques-anonymizer
- Owner: samuelhoover
- License: mit
- Created: 2022-11-21T14:21:59.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-16T15:25:35.000Z (about 2 months ago)
- Last Synced: 2024-11-16T16:28:53.357Z (about 2 months ago)
- Language: Python
- Homepage:
- Size: 22.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# peer-critiques-anonymizer
This module anonymizes, aggregates, and distributes the peer critiques
in the given directory.Written by Akash Jain for ChE 402 in Spring 2020,
modified by Sam Hoover for ChE 401 for Fall 2022 & Fall 2023.Run code with `python anonymizer.py -s `.
# PREREQUISITES
Need to download student list from Moonami! First, on the course webpage, go to
the "Participants" tab. Click on the box to select all participants then scroll
to the bottom of the list and download table as as .csv file from the "With
selected users..." dropdown menu. Using `anonymizer.py` for the first will
prompt you to input the full name of the .csv file of the student list
(including the extension). `anonymizer.py` will create a formatted version of
the student list file and replace the original file. All subsequent times using
`anonymizer.py` will use the student list file it created and will not prompt
for a student list file.# DEMO
Using the below file structure as an example,
```
=======================================================================
+---CHEM-ENG 401/402
| +---anonymizer (this directory)
| | anonymizer.py
| | requirements.txt
| |
| +---peer-evaluations (where to store all the peer critiques)
| | +---section-01
| | | +---round-01
| | | | +---progress-reports
| | | | | +---reviewers
| | | | | | +---reviewer_01
| | | | | | | review_01.xlsx
| | | | | | | review_02.xlsx
| | | | | | | review_03.xlsx
| | | | | +---speakers
| | | | | | +---speaker_01
| | | | | | | anonymized_review_01.xlsx
| | | | | | | anonymized_review_02.xlsx
| | | | | | | anonymized_review_03.xlsx
| : : : : :
| : : : : :
| | | | +---proposals
| | | | | +---reviewers
| | | | | | +---reviewer_01
| | | | | | | review_01.xlsx
| | | | | | | review_02.xlsx
| | | | | | | review_03.xlsx
| | | | | +---speakers
| | | | | | +---speaker_01
| | | | | | | anonymized_review_01.xlsx
| | | | | | | anonymized_review_02.xlsx
| | | | | | | anonymized_review_03.xlsx
: : : : : :
: : : : : :
=======================================================================
```Run `python anonymizer.py -s ../peer-evaluations/section-01/round-01/proposals`
from the `anonymizer` directory ($ pwd is `/CHEM-ENG-401/anonymizer`)
to anonymize, aggregate, and distribute the Section 1 proposal presentation
peer critiques. All of the anonymized copies will be stored in the
`../peer-evaluations/section-01/round-01/proposals/speakers` directory. To do
the same for the Section 2 Round 3 progress reports, the command would be
`python anonymizer.py -s
../peer-evaluations/section-02/round-03/progress-reports`.Make sure to install the required third-party packages:
[openpxyl](https://openpyxl.readthedocs.io/en/stable/) and
[pandas](https://pandas.pydata.org). Run `pip install -r requirements.txt` if
unsure.