├── .gitignore ├── 03_lecture_code_kunal_040416.ipynb ├── 03_lecture_code_kunal_040416.pdf ├── CNAME ├── LICENSE ├── README.md ├── _config.yml ├── _includes ├── JB │ ├── analytics │ ├── analytics-providers │ │ ├── getclicky │ │ ├── google │ │ ├── mixpanel │ │ └── piwik │ ├── categories_list │ ├── comments │ ├── comments-providers │ │ ├── disqus │ │ ├── facebook │ │ ├── intensedebate │ │ └── livefyre │ ├── liquid_raw │ ├── pages_list │ ├── posts_collate │ ├── sharing │ └── tags_list ├── comments.html ├── duplicate.html ├── footer.html ├── head.html ├── header.html └── newpost.html ├── _layouts ├── default.html ├── frontpage.html ├── page.html └── post.html ├── _posts ├── 2016-02-08-the-big-deal-about-python.md ├── 2016-02-22-jupyter-notebook-and-python-fundamentals.md ├── 2016-02-29-to-the-next-level-functions.md ├── 2016-03-07-working-with-data-and-plotting.md ├── 2016-03-14-webscraping-and-websites.md ├── 2016-03-28-python-projects.md ├── 2016-04-04-python-and-apis.md ├── 2016-04-11-python-and-nytimes.md ├── 2016-04-18-python-and-nytimes.md ├── 2016-04-25-python-and-nytimes.md ├── 2016-09-12-intro-to-learn-python.md ├── 2016-09-19-python-basics.md ├── 2016-09-26-more-python-basics.md ├── 2016-10-03-python-practice.md ├── 2016-10-17-intro-to-apis.md ├── 2016-10-31-twitter-api-project.md ├── 2016-11-07-project-part-2.md ├── 2016-11-14-project-part-3.md ├── 2016-11-21-file-writing.md ├── 2016-11-28-final-fall-class.md ├── 2017-01-30-first-spring-meeting.md ├── 2017-02-13-numpy.md ├── 2017-02-27-filewriting.md ├── 2017-03-20-yelp-api.md └── 2017-04-24-final-meeting.md ├── _sass ├── _base.scss └── _layout.scss ├── events ├── _drafts │ └── template.md ├── _posts │ ├── 2013-09-16-py4science-resurrection.md │ ├── 2013-09-18-notes.md │ ├── 2013-09-25-py4data-welcome.md │ ├── 2013-09-27-py4text-welcome.md │ ├── 2013-10-01-py4data-pandas-and-econ.md │ ├── 2013-10-01-py4science-grab-bag.md │ ├── 2013-10-08-py4science-meeting-two.md │ ├── 2013-10-16-py4science-editors.md │ ├── 2013-10-18-back-in-action.md │ ├── 2013-10-25-hacking-away-py4data.md │ ├── 2013-10-30-pandas.md │ ├── 2013-11-18-get-ready-to-test.md │ ├── 2013-11-20-testing-packages.md │ ├── 2013-12-11-coastal-ecosystem-simulation.md │ ├── 2014-01-24-python-workers-party-rally.md │ ├── 2014-01-31-a-new-format.md │ ├── 2014-02-07-tea-party.md │ ├── 2014-02-21-plotting-and-stuff.md │ ├── 2014-02-28-getting-things-done-with-pandas.md │ ├── 2014-03-07-kbase-and-india.md │ ├── 2014-03-14-MOOCs-and-SciPy.md │ ├── 2014-03-21-teaching-and-intervening.md │ ├── 2014-04-04-zen-party.md │ ├── 2014-04-11-hacking-sage.md │ ├── 2014-04-18-Save-the-planet-with-open-data.md │ ├── 2014-04-25-Remixing-parties.md │ ├── 2014-04-25-roundup.md │ ├── 2014-05-02-different-week.md │ ├── 2014-05-09-lots-to-do.md │ ├── 2014-05-16-packaging-discussion.md │ ├── 2014-05-23-training-the-next-generation.md │ ├── 2014-05-30-new-members.md │ ├── 2014-06-06-no-meeting.md │ ├── 2014-06-17-summer-schedule.md │ ├── 2014-06-27-before-scipy.md │ ├── 2014-07-25-after-scipy.md │ ├── 2014-08-08-real-data-science.md │ ├── 2014-08-22-install-party.md │ ├── 2014-09-05-Xray.md │ ├── 2014-09-19-new-structure.md │ ├── 2014-09-26-commoncrawl-big-data.md │ ├── 2014-10-03-blinky-lights.md │ ├── 2014-10-17-geocoding.md │ ├── 2014-11-07-reproducible-science-dexy-docker.md │ ├── 2014-11-21-tabular-data-hdf5-or-sql.md │ └── 2014-12-05-rpy2-and-ropensci.md ├── archive.html ├── assets │ ├── 2014-01-24-PWP-rally-topics.jpg │ ├── PWP.jpg │ ├── newbie_nugget_Oct2_2013.html │ ├── newbie_nugget_Sept18_2013.html │ ├── teaching-whiteboard.jpg │ └── text_editors.png └── index.md ├── favicon.ico ├── feed.xml ├── index.md ├── notebooks ├── Yelp_API_2.ipynb ├── api_intro.ipynb ├── capitals2.csv ├── coding_challenges1.ipynb ├── coding_challenges_sol1.ipynb ├── example2.txt ├── filewriting │ ├── capitals.csv │ ├── capitals2.csv │ ├── counties.txt │ ├── example.txt │ ├── example2.txt │ ├── file_writing.ipynb │ ├── processed_cleveland_data.csv │ ├── sample.txt │ └── states.csv ├── more_python_basics.ipynb ├── numpy │ ├── Intro_to_Numpy.ipynb │ └── processed_cleveland_data.txt ├── project_1.ipynb ├── project_2.ipynb ├── project_2v2.ipynb ├── project_3.ipynb ├── project_3_sol.ipynb ├── python_development.ipynb ├── python_intro.ipynb ├── python_practice.ipynb ├── query_results.csv ├── query_results1.csv ├── query_results2.csv ├── sample.txt ├── to-the-next-level-2-29-16.ipynb └── yelp_api │ ├── Yelp_API.ipynb │ └── yelp_pic.png ├── pages ├── newlearners.md ├── pythoncommunity.md ├── pythonresources.md └── working_group_pastmtgs.md ├── static ├── css │ ├── bootstrap-theme.css │ ├── bootstrap-theme.min.css │ ├── bootstrap.css │ ├── bootstrap.min.css │ ├── index.css │ └── monokai_sublime.min.css ├── fonts │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ ├── glyphicons-halflings-regular.woff │ └── glyphicons-halflings-regular.woff2 ├── img │ └── canvas_bg.jpg └── js │ ├── bootstrap.js │ ├── bootstrap.min.js │ ├── highlight.min.js │ ├── index.js │ ├── jquery-1.11.1.min.js │ └── npm.js ├── test.csv ├── to-the-next-level-2-29-16.pdf └── trainings ├── 2014-08-berkeley-dlab.md ├── 2015-01-berkeley-dlab.md ├── 2015-05-berkeley-dlab.md ├── 2015-08-berkeley-dlab.md └── index.md /.gitignore: -------------------------------------------------------------------------------- 1 | _site 2 | .sass-cache 3 | roster.* 4 | .ipynb_checkpoints 5 | .DS_Store 6 | notebooks/.DS_Store -------------------------------------------------------------------------------- /03_lecture_code_kunal_040416.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dlab-berkeley/python-berkeley/9d7fa03e91e19d6da44245c32a689e33b75c9b83/03_lecture_code_kunal_040416.pdf -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | python.berkeley.edu 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Python at Berkeley 2 | Python resources of Berkeley curated in one place 3 | 4 | ## Using the site 5 | Visit [http://python.berkeley.edu](http://python.berkeley.edu). In particular, please visit: 6 | * [New to Python](http://python.berkeley.edu/learn): the best resources for new learners 7 | * [Community](http://python.berkeley.edu/community): a list of people, organizations, and projects in Berkeley using Python 8 | * [Resources](http://python.berkeley.edu/resources): an extended list of resources for using and learning Python, both online and in-person 9 | * [Past Meetings](http://python.berkeley.edu/past): The Python learners' group meets regularly, and topics from past meetings are here. 10 | 11 | ## Weekly Python Learners' group (in-person) 12 | This group meets to learn both fundamentals of programming and specialized topics in Python, with emphasis on visualization and data science. All skill levels are welcome --- even if you're never programmed before! Check the [website](http://python.berkeley.edu) for meeting times and locations. 13 | 14 | ## Contributing to the site 15 | These pages are community-curated and are open to changes. The [Resources](http://python.berkeley.edu/resources) page especially could use some help. Please make an issue or pull request with your changes. If you're unsure how to do this, please email the D-Lab front desk at [dlab-frontdesk@berkeley.edu](mailto:dlab-frontdesk@berkeley.edu). 16 | * To run this site locally, download this repository and run ```jekyll serve --future```. 17 | * The main pages on the website are located in ```pages/```. The home page is in ```index.md```. 18 | * To add a meeting, look in ```_posts/``` and follow the format of the file name & content. 19 | * To change general webpage styles, look in ```_includes/``` and ```_layouts/```. 20 | * In the past, we've held other Python-based events. They are not directly linked on the main page for simplicity. 21 | * We had several D-Lab Python trainings. Their homepages are in the ```trainings/``` folder. 22 | * Dav Clark ran a Python working group in 2013-2014. His pages are located in ```_site``` and ```events```. 23 | * I know there are other random files (.ipynb, .csv, .xlsx, .pdf) just "sitting" in the repository. They probably ARE linked on some other pages. If someone cleans this up (like putting all Spring 2016 files in a folder), please update the links on the meeting pages (check files in the ```_posts``` folder.) 24 | 25 | --- 26 | Thanks for visiting! 27 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | # Site settings 2 | title: Python Practice 3 | email: dlab-frontdesk@berkeley.edu 4 | description: > 5 | New to programming? Here is a collection of learning resources for the 6 | Python programming language and information about projects that use it on 7 | the UC Berkeley campus. 8 | gems: 9 | - jekyll-redirect-from 10 | future: true #so you see future posts! 11 | github_username: dlab-berkeley/python-berkeley #for github link in footer 12 | permalink: /:year-:month-:day-:title/ 13 | viewsourceroot: https://github.com/dlab-berkeley/python-berkeley/edit/gh-pages/ #link in footer to edit this page 14 | 15 | 16 | 17 | 18 | ############################################ 19 | ## NOT SURE ABOUT THESE SETTINGS ## 20 | 21 | ############################################ 22 | newsourceroot: https://github.com/dlab-berkeley/python-berkeley/blob/gh-pages/ 23 | ############################################ 24 | # url: "http://yourdomain.com" # the base hostname & protocol for your site 25 | # twitter_username: jekyllrb 26 | ############################################ 27 | # for duoshuo.com commenting system, uncomment following line if you do not want to include duoshuo.com. 28 | #duoshuo_shortname: lixizhi 29 | #duoshuo_url: "http://lixizhi.github.io" 30 | # disqus.com commenting system. please note that it is exclusive with duoshuo.com 31 | #disqus_shortname: lixizhi 32 | #disqus_url: "http://lixizhi.github.io" 33 | ######################################### 34 | # Build settings 35 | # This is default 36 | markdown: kramdown 37 | kramdown: 38 | smart_quotes: ["apos", "apos", "quot", "quot"] #smart quotes do stupid things with this theme, so turns them off 39 | # The default highlighter for Jekyll, and the ONLY one on GitHub 40 | # highlighter: rouge 41 | -------------------------------------------------------------------------------- /_includes/JB/analytics: -------------------------------------------------------------------------------- 1 | {% if site.safe and site.JB.analytics.provider and page.JB.analytics != false %} 2 | 3 | {% case site.JB.analytics.provider %} 4 | {% when "google" %} 5 | {% include JB/analytics-providers/google %} 6 | {% when "getclicky" %} 7 | {% include JB/analytics-providers/getclicky %} 8 | {% when "mixpanel" %} 9 | {% include JB/analytics-providers/mixpanel %} 10 | {% when "piwik" %} 11 | {% include JB/analytics-providers/piwik %} 12 | {% when "custom" %} 13 | {% include custom/analytics %} 14 | {% endcase %} 15 | 16 | {% endif %} -------------------------------------------------------------------------------- /_includes/JB/analytics-providers/getclicky: -------------------------------------------------------------------------------- 1 | 12 | 13 | -------------------------------------------------------------------------------- /_includes/JB/analytics-providers/google: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_includes/JB/analytics-providers/mixpanel: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_includes/JB/analytics-providers/piwik: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /_includes/JB/categories_list: -------------------------------------------------------------------------------- 1 | {% comment %}{% endcomment %} 19 | 20 | {% if site.JB.categories_list.provider == "custom" %} 21 | {% include custom/categories_list %} 22 | {% else %} 23 | {% if categories_list.first[0] == null %} 24 | {% for category in categories_list %} 25 |
  • 26 | {{ category | join: "/" }} {{ site.categories[category].size }} 27 |
  • 28 | {% endfor %} 29 | {% else %} 30 | {% for category in categories_list %} 31 |
  • 32 | {{ category[0] | join: "/" }} {{ category[1].size }} 33 |
  • 34 | {% endfor %} 35 | {% endif %} 36 | {% endif %} 37 | {% assign categories_list = nil %} -------------------------------------------------------------------------------- /_includes/JB/comments: -------------------------------------------------------------------------------- 1 | {% if site.JB.comments.provider and page.comments != false %} 2 | 3 | {% case site.JB.comments.provider %} 4 | {% when "disqus" %} 5 | {% include JB/comments-providers/disqus %} 6 | {% when "livefyre" %} 7 | {% include JB/comments-providers/livefyre %} 8 | {% when "intensedebate" %} 9 | {% include JB/comments-providers/intensedebate %} 10 | {% when "facebook" %} 11 | {% include JB/comments-providers/facebook %} 12 | {% when "custom" %} 13 | {% include custom/comments %} 14 | {% endcase %} 15 | 16 | {% endif %} -------------------------------------------------------------------------------- /_includes/JB/comments-providers/disqus: -------------------------------------------------------------------------------- 1 |
    2 | 13 | 14 | blog comments powered by Disqus 15 | -------------------------------------------------------------------------------- /_includes/JB/comments-providers/facebook: -------------------------------------------------------------------------------- 1 |
    2 | 9 |
    -------------------------------------------------------------------------------- /_includes/JB/comments-providers/intensedebate: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /_includes/JB/comments-providers/livefyre: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /_includes/JB/liquid_raw: -------------------------------------------------------------------------------- 1 | {% comment%}{% endcomment%} 26 | 27 | {% if site.JB.liquid_raw.provider == "custom" %} 28 | {% include custom/liquid_raw %} 29 | {% else %} 30 |
    {{text | replace:"|.", "{" | replace:".|", "}" | replace:">", ">" | replace:"<", "<" }}
    31 | {% endif %} 32 | {% assign text = nil %} -------------------------------------------------------------------------------- /_includes/JB/pages_list: -------------------------------------------------------------------------------- 1 | {% comment %}{% endcomment %} 22 | 23 | {% if site.JB.pages_list.provider == "custom" %} 24 | {% include custom/pages_list %} 25 | {% else %} 26 | {% for node in pages_list %} 27 | {% if node.title != null %} 28 | {% if group == null or group == node.group %} 29 | {% if page.url == node.url %} 30 |
  • {{node.title}}
  • 31 | {% else %} 32 |
  • {{node.title}}
  • 33 | {% endif %} 34 | {% endif %} 35 | {% endif %} 36 | {% endfor %} 37 | {% endif %} 38 | {% assign pages_list = nil %} 39 | {% assign group = nil %} -------------------------------------------------------------------------------- /_includes/JB/posts_collate: -------------------------------------------------------------------------------- 1 | {% comment %}{% endcomment %} 19 | 20 | {% if site.JB.posts_collate.provider == "custom" %} 21 | {% include custom/posts_collate %} 22 | {% else %} 23 | {% for post in posts_collate %} 24 | {% capture this_year %}{{ post.date | date: "%Y" }}{% endcapture %} 25 | {% capture this_month %}{{ post.date | date: "%B" }}{% endcapture %} 26 | {% capture next_year %}{{ post.previous.date | date: "%Y" }}{% endcapture %} 27 | {% capture next_month %}{{ post.previous.date | date: "%B" }}{% endcapture %} 28 | 29 | {% if forloop.first %} 30 |

    {{this_year}}

    31 |

    {{this_month}}

    32 | 39 | {% else %} 40 | {% if this_year != next_year %} 41 | 42 |

    {{next_year}}

    43 |

    {{next_month}}

    44 | 48 |

    {{next_month}}

    49 |