Not logged in
Talk
Contributions
Create account
Log in
Navigation
Main page
About
People
Publications
Teaching
Resources
Research Blog
Wiki Functions
Recent changes
Help
Licensing
Page
Discussion
Edit
View history
Editing
Intro to Programming and Data Science (Summer 2021)
(section)
From CommunityData
Jump to:
navigation
,
search
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
= Schedule = '''NOTE''': This section will be modified throughout the course to meet the class's needs. Check back in often. There are links to each day's slides. Note that these are slides from an earlier version of the class and will typically be updated the day of each class. == Day 1: Introduction to Python and Computational Thinking (May 17) == '''Assignment Due:''' * None '''Required Readings:''' * [https://www.youtube.com/watch?v=HW29067qVWk Intro to Jupyter Notebooks video] '''Agenda:''' * Class overview and expectations β We'll walk through this syllabus. * [[/Day_1_Coding_Challenge| Day 1 Coding challenge]] - Includes installing Python and going through a number of exercises. * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_1/lecture/day_1.html Today's slides] '''By the end of class you will:''' * Have a working python environment on your personal laptop. * Have written your first program in the python language. == Day 2: Variables, conditionals, and functions (May 18) == '''Assignments Due:''' * Finish Day 1 exercises and tutorials * Fill out this [https://docs.google.com/forms/d/e/1FAIpQLSfUiGogs2jDXIHaXz1ooVBZFkRF2NdMaf00IgZvk7f69rby9w/viewform?usp=sf_link short survey] * Sign up to be a discussant [https://docs.google.com/spreadsheets/d/1uSo-Ya5DghaLu1BYk94EVU2kBVmExRWwOa1586GbFUU/edit?usp=sharing here] * [[/Day_2_Coding_Challenges|Day 2 Coding Challenge]] (turn in on Brightspace) '''Readings (before class):''' * Bit By bit, [https://www.bitbybitbook.com/en/1st-ed/introduction/ Introduction] * Python for Everybody, chapters 1-4 * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_2/day_2.ipynb Today's Jupyter Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6387775/View Notebook walkthrough] '''Agenda:''' * Review Day 1 and Day 2 Exercises * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_2/lecture/day_2.html Today's slides] * Introduce wordplay project == Day 3: Iteration, strings, and lists (May 19) == '''Assignment Due:''' * Final project dataset and idea (turn in on Brightspace). * [[/Day_3_Coding_Challenges|Day 3 Coding Challenge]] '''Readings:''' * Python for Everybody chapters_to_read = [5, 6, 8] * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_3/day_3.ipynb Today's Jupyter Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6390578/View Notebook walkthrough] * Foote, J., Shaw, A., & Hill, B.M. (2017). [https://jeremydfoote.com/files/foote_computational_2017.pdf Computational analysis of social media scholarship]. In Burgess, J., Poell, T., Marwick, A. (Eds.), The Sage Handbook of Social Media. Sage. ** Discussant: Juan Pablo '''Agenda:''' * Programming principles (iteration, strings, and lists) * Go over last day's assignment * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_3/lecture/day_3.html Today's slides] == Day 4: Reading from and writing to files (May 20) == '''Assignment Due:''' * [[/Day 4 Coding Challenges|Day 4 Coding Challenges]] '''Readings:''' book = open('Python for Everybody', 'r') for chapter in book: if chapter == '7': read(chapter) book.close() * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_4/day_4.ipynb Today's Jupyter Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6399269/View Notebook walkthrough] * Nelson, Laura K. 2017. "[https://doi.org/10.1177%2F0049124117729703 Computational Grounded Theory: A Methodological Framework]." Sociological Methods and Research. ** Discussant: Beth Ann '''Agenda:''' * Reading from and writing to files * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_4/lecture/day_4.html Today's slides] == Day 5: Dictionaries and Tuples (May 21) == '''Assignment Due:''' * [[/Day 5 Coding Challenges|Day 5 Coding Challenges]] * Do the [[/Twitter_authentication_setup|Twitter Authentication Setup]] '''Readings:''' * Python for Everybody, chapters 9 and 10 * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_5/day_5.ipynb Today's Jupyter Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6415595/View Video walkthrough] * Margolin, D. B., Hannak, A., & Weber, I. (2018). [https://doi.org/10.1080/10584609.2017.1334018 Political Fact-Checking on Twitter: When Do Corrections Have an Effect?] Political Communication, 35(2), 196β219. ** Discussant: Katelyn '''Agenda:''' * Dictionaries * Tuples * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_5/lecture/day_5.html Today's slides] == Day 6: Dataframes and Visualization (May 24) == '''Assignment Due:''' * [[/Day 6 Coding Challenges|Day 6 Coding Challenges]] '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_6/day_6.ipynb Day 6 notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6419983/View Notebook walkthrough] * Benefield, G. A., Shen, C., & Leavitt, A. (2016). [https://doi.org/10.1145/2818048.2819935 Virtual Team Networks: How Group Social Capital Affects Team Success in a Massively Multiplayer Online Game]. Proceedings of the 19th ACM Conference on Computer-Supported Cooperative Work & Social Computing, 679β690. ** Discussant: Anna '''Agenda:''' * Dataframes and visualization * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_6/lecture/day_6.html Today's slides] == Day 7: Dataframes and visualization (continued) (May 25) == '''Assignment Due:''' * [[/Day 7 Coding Challenges|Day 7 Coding Challenges]] '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_7/day_7.ipynb Day 7 notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6429518/View Notebook walkthrough] * Lazer, D., & Radford, J. (2017). [https://doi.org/10.1146/annurev-soc-060116-053457 Data ex Machina: Introduction to Big Data]. Annual Review of Sociology, 43(1), 19β39. ** Discussant: Yong '''Agenda:''' * Visualizations in Seaborn * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_7/lecture/day_7.html Today's slides] == Day 8: Collecting Data with APIs (May 26) == '''Assignment Due:''' * [[/Day 8 Coding Challenges|Day 8 Coding Challenges]]. ** [https://youtu.be/TASX3evcgG4 Video instructions to install tweepy] '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_8/day_8.ipynb Intro to APIs Notebook] ** (Long) [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6430558/View walkthrough of notebook] * Kieran Healy and James Moody (2014). β[https://doi.org/10.1146/annurev-soc-071312-145551 Data Visualization in Sociology].β American Review of Sociology. 40: 105-28. ** Discussant: Pearlynne '''Agenda:''' * Introduce the [https://2.python-requests.org/en/master/ requests] library * Discuss the main kinds of online data gathering: downloading, scraping, and APIs. * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_8/lecture/day_8.html Today's slides] == Day 9: Collecting Data with APIs (continued) (May 27) == '''Assignment Due:''' * Start on [[Intro to Programming and Data Science (Summer 2021)/Day 9 Coding Challenges|Day 9 Coding Challenges]] * First [[Self_Assessment_Reflection | self-assessment reflection]] is due (on Brightspace). * Project Planning Document Due '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_9/day_9.ipynb Day 9 Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6437812/View Notebook walkthrough] * Python for Everybody, Chapter 13 * Vitak, J., Shilton, K., & Ashktorab, Z. (2016). [https://doi.org/10.1145/2818048.2820078 Beyond the Belmont Principles: Ethical Challenges, Practices, and Beliefs in the Online Data Research Community]. Proceedings of the 19th ACM Conference on Computer-Supported Cooperative Work & Social Computing, 941β953. ** Discussant: Casey Lynn * (Optional) Williams, M. L., Burnap, P., & Sloan, L. (2017). [https://doi.org/10.1177/0038038517708140 Towards an Ethical Framework for Publishing Twitter Data in Social Research: Taking into Account Usersβ Views, Online Context and Algorithmic Estimation]: Sociology. * (Optional) Salganik, M. [https://www.bitbybitbook.com/en/1st-ed/ethics/ Ethics] chapter from Bit By Bit. * (Optional) Crawford, K., & Finn, M. (2015). [https://doi.org/10.1007/s10708-014-9597-z The limits of crisis data: Analytical and ethical challenges of using social and mobile data to understand disasters]. GeoJournal, 80(4), 491β502. '''Agenda:''' * A workflow for doing work with APIs * Ethics of digital trace data * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_9/lecture/day_9.html Today's slides] == Day 10: Introduction to Computational Text Analysis (May 28) == '''Assignment Due:''' * [[/Day 9 Coding Challenges|Day 9 Coding Challenges]] * [[/Day 10 Coding Challenges|Day 10 Coding Challenges]] '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_10/day_10.ipynb Today's Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6445663/View Notebook walkthrough] * Christopher A. Bail et al. 2018. [https://doi.org/10.1073/pnas.1804840115 Exposure to opposing views on social media can increase political polarization]. PNAS 115(37): 9216-9221 ** Discussant: Caitlyn '''Agenda:''' * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_10/lecture/day_10.html Today's slides] '''Resources:''' * [https://youtu.be/FhxZdc1OaNU Two videos of me clumsily solving the Day 8 Problems] * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/blob/master/resources/solutions/Twitter_answers.ipynb My answers to the Day 8 problems] == Day 11: Data cleaning and operationalization (June 1) == '''Assignment Due:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_11/day_11.ipynb Day 11 Coding Challenges] '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_11/day_11.ipynb Today's Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6450755/View Notebook walkthrough] * Robert K. Merton. 1948. [https://www-jstor-org.ezproxy.lib.purdue.edu/stable/2087142?sid=primo&origin=crossref&seq=1#metadata_info_tab_contents The Bearing of Empirical Research Upon the Development of Social Theory]. American Sociological Review 13(5): 505-515. * Sara Klingenstein, Tim Hitchcock, and Simon DeDeo. 2014. [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4084475/ The civilizing process in Londonβs Old Baily]. Proceedings of the National Academy of Sciences 111(26): 9419-9424. ** Discussant: Jeremy '''Resources:''' * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_11/lecture/day_11.html Today's slides] == Day 12: Organizing and storing computational projects (June 2) == '''Assignment Due:''' * [[/Day_12_Coding_Challenges|Day 12 Coding Challenges]] '''Readings:''' * [https://youtu.be/-_mjC3lAKL4 Video introducing a way to organize code and data] (from the Spring 2020 version of the class) * [https://www.youtube.com/watch?v=SWYqp7iY_Tc Git & GitHub Crash Course For Beginners] - YouTube video (not by me) introducing Git and Github * [https://learngitbranching.js.org/ Interactive git branching tutorial] * DellaPosta, D., Shi, Y., & Macy, M. (2015). [https://doi.org/10.1086/681254 Why Do Liberals Drink Lattes]? American Journal of Sociology, 120(5), 1473β1511. ** Discussant: Lucy '''Agenda:''' * Tour of Github * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_12/lecture/day_12.html Today's slides] '''Resources:''' == Day 13: Statistical summaries and tests (June 3) == '''Assignment Due:''' * [[/Day_13_Coding_Challenges|Day 13 Coding Challenges]] '''Readings:''' * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/raw/summer2021/day_13/day_13.ipynb Day 13 Notebook] ** [https://purdue.brightspace.com/d2l/le/content/306917/viewContent/6459652/View Notebook walkthrough] * Tan, C. (2018). [https://aaai.org/ocs/index.php/ICWSM/ICWSM18/paper/view/17811 Tracing community genealogy: How new communities emerge from the old]. Proceedings of the Twelfth International Conference on Web and Social Media (ICWSM β18), 395β404. ** Discussant: '''Agenda:''' * [https://jeremydfoote.com/Intro-to-Programming-and-Data-Science/day_13/lecture/day_13.html Today's slides] == Day 14: Screen scraping (June 4) == '''Assignment Due:''' '''Readings:''' * Shaw, A., & Hill, B. M. (2014). [https://doi.org/10.1111/jcom.12082 Laboratories of oligarchy? How the iron law extends to peer production]. Journal of Communication, 64(2), 215β238. ** Discussant: * [https://towardsdatascience.com/ethics-in-web-scraping-b96b18136f01 Ethics in Web Scraping] by James Densmore '''Agenda:''' * If you are interested in doing web scraping, then look at this [https://github.com/CU-ITSS/Web-Data-Scraping-S2019 incredible mini-course on the topic]. It is all done with Jupyter Notebooks and you have all of the prerequisite knowledge to understand it. * [https://youtu.be/daUuC-PMZc4 Very brief lecture on web scraping from Spring 2020]. == Day 15-17: Work on final project (June 7-9) == '''Agenda:''' * I will be available to answer questions and provide help '''Additional Resources:''' * [https://www.youtube.com/watch?v=K8L6KVGG-7o Regular Expressions] * [https://www.youtube.com/watch?v=3dt4OGnU5sM List Comprehensions] * [https://youtu.be/flwcAf1_1RU Network Analysis] * [https://youtu.be/KBDJhhz4oXA Getting data from Reddit] * [https://www.youtube.com/watch?v=ZDa-Z5JzLYM Classes and Object-oriented programming] (This is a set of videos) * [https://bbengfort.github.io/snippets/2018/06/22/corenlp-nltk-parses.html Tutorial on syntax parsing in Python] (It's complicated!) == Day 18: Final project presentation (June 10) == '''Assignment Due:''' * Final project presentations * Prepare a presentation and post it on Brightspace '''Readings:''' * NONE '''Agenda:''' * We will listen to and respond to each other's projects == Day 19: Final Paper Due (June 11) == '''Assignment Due:''' * Final paper due * [[/Final_self_reflection|Final self reflection]] due
Summary:
Please note that all contributions to CommunityData are considered to be released under the Attribution-Share Alike 3.0 Unported (see
CommunityData:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
To protect the wiki against automated edit spam, we kindly ask you to solve the following CAPTCHA:
Cancel
Editing help
(opens in new window)
Tools
What links here
Related changes
Special pages
Page information