Latest revision |
Your text |
Line 1: |
Line 1: |
| = Course Information = | | = Course Information = |
| :'''COM 674: Introduction to Programming and Data Science''' | | :'''COM 574: Introduction to Programming and Data Science''' |
| :'''Location:''' BRNG 2273 | | :'''Location:''' BRNG 2273 |
| :'''Class Hours:''' ONLINE | | :'''Class Hours:''' Tuesdays; 5:30-8:20pm |
|
| |
|
| == Instructor == | | == Instructor == |
| :'''Instructor:''' [https://jeremydfoote.com Jeremy Foote] | | :'''Instructor:''' [https://jeremydfoote.com Jeremy Foote] |
| :'''Email:''' jdfoote@purdue.edu | | :'''Email:''' jdfoote@purdue.edu |
| :'''Office Hours:''' Tuesdays and Thursdays; 2-3pm; https://meet.jit.si/JeremyOffice | | :'''Office Hours:''' Thursdays; 12:30-2:30pm; BRNG 2156 |
|
| |
|
|
| |
|
Line 274: |
Line 274: |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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.
| | |
| | |
| book = open('Python for Everybody', 'r') | | book = open('Python for Everybody', 'r') |
| for chapter in book: | | for chapter in book: |
Line 283: |
Line 282: |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| | |
| * Go over last week's assignment. | | * Go over last week's assignment. |
| * Spend time on [[Intro to Programming and Data Science (Spring 2020)/Day 5 Coding Challenges|Day 5 Coding Challenges]] | | * Spend time on [[Intro to Programming and Data Science (Spring 2020)/Day 5 Coding Challenges|Day 5 Coding Challenges]] |
|
| |
|
| '''Snack:'''
| |
| * Leah
| |
|
| |
|
| == Week 6: Jupyter and Dictionaries (February 18) == | | == Week 6: Dictionaries and networks (February 18) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Turn in (on Brightspace) your solutions to the Day 5 coding challenges | | |
| | * Turn in (on Brightspace) your solutions to the Day 4 coding challenges |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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: Courteney
| |
| * [https://www.youtube.com/watch?v=HW29067qVWk Intro to Jupyter Notebooks video]
| |
| * Python for Everybody, chapters 9 and 10 | | * Python for Everybody, chapters 9 and 10 |
|
| |
|
| | '''Agenda:''' |
|
| |
|
| '''Agenda:'''
| | * Spend time on [[Intro to Programming and Data Science (Spring 2020)/Day 7 Coding Challenges|Day 7 Coding Challenges]] which are group challenges. |
| * Introduction to Jupyter notebooks | |
| * Dictionaries
| |
| * Tuples
| |
| * Network analysis
| |
| * Begin work on [https://campus.datacamp.com/courses/intermediate-python-for-data-science DataCamp Intermediate Python], Chapters 1-3
| |
| * Start [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/blob/master/resources/exercises/week_6_exercises.ipynb Day 6 Coding Challenges]
| |
|
| |
|
| '''Snack:'''
| |
| * Kirstin
| |
|
| |
|
| == Week 7: Dataframes and visualization (February 25) == | | == Week 7: Pandas and dataframes (February 25) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Finish Day 6 Coding Challenges
| |
|
| |
|
| | Final Project Proposal. |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * Lazer, D., & Radford, J. (2017). Data ex Machina: Introduction to Big Data. Annual Review of Sociology, 43(1), 19–39. https://doi.org/10.1146/annurev-soc-060116-053457
| | |
| ** Discussant: Hanna
| |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * Introduction to data frames | | * Introduction to data frames |
| * We will be discussing this data set: https://hub.mph.in.gov/dataset/aries-crash-data-2007-2017/resource/cc90589c-72d8-4d92-a5fe-73254b555c73 | | * We will be discussing this data set: https://hub.mph.in.gov/dataset/aries-crash-data-2007-2017/resource/cc90589c-72d8-4d92-a5fe-73254b555c73 |
| * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/blob/master/resources/exercises/week_7_exercises.ipynb Day 7 Coding Challenges] | | * Begin work on [https://campus.datacamp.com/courses/intermediate-python-for-data-science DataCamp Intermediate Python - chapter 2] |
| | |
|
| |
|
| '''Snack:'''
| |
| * Caitlyn
| |
|
| |
|
| == Week 8: Dataframes and visualizations (continued) (March 3) == | | == Week 8: Jupyter and Data Visualization (March 3) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Second [[Self_Assessment_Reflection|self-assessment reflection]] is due. | | * Second [[Self_Assessment_Reflection|self-assessment reflection]] is due. |
| * Finish [https://campus.datacamp.com/courses/intermediate-python-for-data-science DataCamp Intermediate Python], Chapters 1-3 | | * Finish [https://campus.datacamp.com/courses/intermediate-python-for-data-science DataCamp Intermediate Python - chapter 2] |
| * Turn in Day 7 Coding Challenges
| |
| | |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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. | | * Kieran Healy and James Moody (2014). “Data Visualization in Sociology.” American Review of Sociology. 40: 105-28. |
| ** Discussant: Leah | | * (Optional) * [https://www.youtube.com/watch?v=HW29067qVWk Intro to Jupyter Notebooks video] |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * Introduce the [https://2.python-requests.org/en/master/ requests] library | | * Introduction to Jupyter notebooks |
| * Discuss the main kinds of online data gathering: downloading, scraping, and APIs.
| | * Start [https://campus.datacamp.com/courses/intermediate-python-for-data-science DataCamp Intermediate Python - chapter 1] |
| * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/blob/master/resources/exercises/week_8_intro.ipynb Intro to APIs Notebook] | |
| * Spend time on [[Intro to Programming and Data Science (Spring 2020)/Day 8 Coding Challenges|Day 8 Coding Challenges]].
| |
|
| |
|
| '''Snack:'''
| |
| * Tanner
| |
|
| |
|
| == Week 9: Collecting data with APIs (March 10) == | | == Week 9: Collecting data with APIs (March 10) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| | * Finish [https://campus.datacamp.com/courses/intermediate-python-for-data-science DataCamp Intermediate Python - chapter 1] |
| * Project Planning Document Due | | * Project Planning Document Due |
| * Finish API Notebook
| |
| * Start on Day 8 coding challenges (at least get the example code to run)
| |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * Python for Everybody, Chapter 13 | | * 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.
| |
| * (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:''' | | '''Agenda:''' |
| * Start [[Intro to Programming and Data Science (Spring 2020)/Twitter Assignment|Twitter API Assignment]] | | * Introduce the [https://2.python-requests.org/en/master/ requests] library |
| | | * Discuss the main kinds of online data gathering: downloading, scraping, and APIs. |
| '''Snack:'''
| |
| * Tian
| |
|
| |
|
| == March 17: SPRING BREAK == | | == March 17: SPRING BREAK == |
Line 379: |
Line 353: |
|
| |
|
|
| |
|
| == Week 10: Cleaning data and operationalization (March 27) == | | == Week 10: Cleaning data and operationalization (March 24) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * [[Intro to Programming and Data Science (Spring 2020)/Twitter Assignment|Twitter API Assignment]] | | * [[Intro to Programming and Data Science (Spring 2020)|Reddit API assignment]] |
| * As much of [[Intro to Programming and Data Science (Spring 2020)/Day 8 Coding Challenges|Day 8 Coding Challenges]] as you can get through
| |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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. | | * Robert K. Merton. 1948. “The Bearing of Empirical Research Upon the Development of Social Theory.” American Sociological Review 13(5): 505-515. |
| * 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 | | * Sara Klingenstein, Tim Hitchcock, and Simon DeDeo. 2014. The civilizing process in London’s Old Baily. Proceedings of the National Academy of Sciences 111(26): 9419-9424. |
| ** Discussant: Tian
| |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * [https://www.youtube.com/watch?v=N-IeSsL3HJo Online lecture] | | * Measures and variables in social science |
| | * Creating measures from online data |
|
| |
|
| '''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]
| |
|
| |
| == Week 11: Introduction to computational text analysis (April 3) ==
| |
|
| |
|
| | == Week 11: Storing code and data (March 31) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/blob/master/resources/exercises/week_11_challenges.ipynb Week 11 Programming challenges]
| |
|
| |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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.
| |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * [https://youtu.be/YYyfSc4CACY Lecture + intro to challenges] | | * We will learn about using the version control system Git and the Git hosting site Github |
|
| |
|
| '''Snack:'''
| |
|
| |
|
| == Week 12: Storing code and data (April 10) == | | == Week 12: Screen scraping (April 7) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Third self-assessment reflection is due. | | * Third self-assessment reflection is due. |
| * Put your Twitter project on Github and email me the URL
| |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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: Cassidy
| |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * We will learn about using the version control system Git and the Git hosting site Github | | * Introduction to BeautifulSoup |
|
| |
|
| '''Resources:'''
| |
| * [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]
| |
| * [https://youtu.be/-_mjC3lAKL4 Data management] - My video
| |
|
| |
|
| == Week 13: Statistical summaries and tests (April 17) == | | == Week 13: Statistical summaries and tests (April 14) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
|
| |
| * If you would like, try to apply some statistical tests to your API data
| |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
| * 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.
| |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * [https://github.com/jdfoote/Intro-to-Programming-and-Data-Science/blob/master/resources/exercises/week-13-challenges.ipynb Week 13 Notebook] | | * Using pandas for basic statistical tests |
| * [https://youtu.be/j8e8JPWAHr8 Video explanation of notebook]
| | |
| | |
| | == Week 14: Introduction to computational text analysis (April 21) == |
|
| |
|
| == Week 14: Screen scraping (April 24) ==
| |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Response to reading on FlipGrid
| |
|
| |
|
| '''Readings:''' | | '''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: Jeonghyun
| |
| * [https://towardsdatascience.com/ethics-in-web-scraping-b96b18136f01 Ethics in Web Scraping] by James Densmore
| |
|
| |
|
| '''Agenda:''' | | '''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].
| |
|
| |
|
| == Week 15: Project presentations (May 1) == | | |
| | == Week 15: Project presentations (April 28) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Final project presentations | | * Final project presentations |
| * Prepare a presentation and post it on FlipGrid
| |
|
| |
|
| '''Readings:''' | | '''Readings:''' |
|
| |
|
| |
|
| '''Agenda:''' | | '''Agenda:''' |
| * We will listen to and respond to each other's projects | | * We will listen to each of the final project presentations. |
| | |
| '''Snack:'''
| |
| | |
|
| |
|
|
| |
|
| == Week 16: Finals week (May 8) == | | == Week 16: Finals week (May 5) == |
|
| |
|
| '''Assignment Due:''' | | '''Assignment Due:''' |
| * Final paper due - Due May 6 to give me time to read them | | * Final paper due |
| * [[Final self reflection]] - Due May 8
| |
|
| |
|
| = Administrative Notes = | | = Administrative Notes = |