D Project Tree

The final directory tree for the Zipf’s Law project looks like the following:

pyzipf/
├── .gitignore
├── CITATION.md
├── CONDUCT.md
├── CONTRIBUTING.md
├── KhanVirtanen2020.md
├── LICENSE.md
├── Makefile
├── README.rst
├── environment.yml
├── requirements.txt
├── requirements_docs.txt
├── setup.py
├── data
│   ├── README.md
│   ├── dracula.txt
│   ├── frankenstein.txt
│   ├── jane_eyre.txt
│   ├── moby_dick.txt
│   ├── sense_and_sensibility.txt
│   ├── sherlock_holmes.txt
│   └── time_machine.txt
├── docs
│   ├── Makefile
│   ├── conf.py
│   ├── index.rst
│   └── source
│   │   ├── collate.rst
│   │   ├── countwords.rst
│   │   ├── modules.rst
│   │   ├── plotcounts.rst
│   │   ├── test_zipfs.rst
│   │   └── utilities.rst
├── results
│   ├── collated.csv
│   ├── collated.png
│   ├── dracula.csv
│   ├── dracula.png
│   ├── frankenstein.csv
│   ├── jane_eyre.csv
│   ├── jane_eyre.png
│   ├── moby_dick.csv
│   ├── sense_and_sensibility.csv
│   ├── sherlock_holmes.csv
│   └── time_machine.csv
├── test_data
│   ├── random_words.txt
│   └── risk.txt
└── pyzipf
    ├── book_summary.sh
    ├── collate.py
    ├── countwords.py
    ├── plotcounts.py
    ├── plotparams.yml
    ├── script_template.py
    ├── test_zipfs.py
    └── utilities.py

You can view the complete project, including the version history, in Amira’s zipf repository on GitHub.

Each file was introduced and subsequently modified in the following chapters, sections and exercises:

  • pyzipf/: Introduced as zipf/ in Section 1.2 and changed name to pyzipf/ in Section 14.1.

  • pyzipf/.gitignore: Introduced in Section 6.9, and updated in various other chapters following GitHub’s .gitignore templates.

  • pyzipf/CITATION.md: Introduced in Section 14.7.

  • pyzipf/CONDUCT.md: Introduced in Section 8.3 and committed to the repository in Exercise 8.14.2.

  • pyzipf/CONTRIBUTING.md: Introduced in Section 8.11 and committed to the repository in Exercise 8.14.4.

  • pyzipf/KhanVirtanen2020.md: Introduced in Section 13.2.2.

  • pyzipf/LICENSE.md: Introduced in Section 8.4.1 and committed to the repository in Exercise 8.14.3.

  • pyzipf/Makefile: Introduced and updated throughout Chapter 9. Updated again in Exercise 10.8.1.

  • pyzipf/README.rst: Introduced as a .md file in Section 7.6, updated in Section 7.8 and then converted to a .rst file with further updates in Section 14.6.1.

  • pyzipf/environment.yml: Introduced in Section 13.2.1.

  • pyzipf/requirements.txt: Introduced in Section 11.8.

  • pyzipf/requirements_docs.txt: Introduced in Section 14.6.2.

  • pyzipf/setup.py: Introduced and updated throughout Chapter 14.

  • pyzipf/data/* : Downloaded as part of the setup instructions (Section 1.2).

  • pyzipf/docs/*: Introduced in Section 14.6.2.

  • pyzipf/results/collated.*: Generated in Section 9.9.

  • pyzipf/results/dracula.csv: Generated in Section 5.7.

  • pyzipf/results/dracula.png: Generated in Section 6.5 and updated in Section 7.4.

  • pyzipf/results/jane_eyre.csv: Generated in Section 5.7.

  • pyzipf/results/jane_eyre.png: Generated in Section 5.9.

  • pyzipf/results/moby_dick.csv: Generated in Section 5.7.

  • pyzipf/results/frankenstein.csv: Generated in Section 9.7.

  • pyzipf/results/sense_and_sensibility.csv: Generated in Section 9.7.

  • pyzipf/results/sherlock_holmes.csv: Generated in Section 9.7.

  • pyzipf/results/time_machine.csv: Generated in Section 9.7.

  • pyzipf/test_data/random_words.txt: Generated in Section 11.5.

  • pyzipf/test_data/risk.txt: Introduced in Section 11.2.

  • pyzipf/pyzipf/: Introduced as bin/ in Section 1.1.2 and changed name to pyzipf/ in Section 14.1.

  • pyzipf/pyzipf/book_summary.sh: Introduced and updated throughout Chapter 4.

  • pyzipf/pyzipf/collate.py: Introduced in Section 5.7 and updated in Section 5.8, throughout Chapter 12 and in Section 14.1.

  • pyzipf/pyzipf/countwords.py: Introduced in Section 5.4 and updated in Sections 5.8 and 14.1.

  • pyzipf/pyzipf/plotcounts.py: Introduced in Exercise 5.11.4 and updated throughout Chapters 67 and 10.

  • pyzipf/pyzipf/plotparams.yml: Introduced in Section 10.6.

  • pyzipf/pyzipf/script_template.py: Introduced in Section 5.2 and updated in Section 5.3.

  • pyzipf/pyzipf/test_zipfs.py: Introduced and updated throughout Chapter 11.

  • pyzipf/pyzipf/utilities.py: Introduced in Section 5.8.