Skip to end of metadata
Go to start of metadata

The Community for Data Integration is doing a second installment of experimenting with group learning with online platforms.

Last time we did the DataCamp introductory course for Git, and this time we will do the introductory course for Python.

Knowing that it's hard to self-motivate to finish an entire online course, let's do it together with a peer group and a set deadline!


What:  DataCamp free course: Introduction to Python for Data Science

Where: https://www.datacamp.com/courses/intro-to-python-for-data-science

When: Between October 1 and November 1, 2018 (approximate 4 hour commitment)

Who: You, and Leslie, and peers from the Community for Data Integration.

How:

  1. Sign up with your email on the list at https://goo.gl/NXSAoN (Feel free to sign up after the first week, you can still complete the course because it is at your own pace.)
  2. Every Wednesday from October 3 - October 24, 2018, you'll get a reminder to do the next section.
  3. Every Friday from October 5 - October 26, 2018, Leslie will post her progress, any questions or comments she had (as comments on this wiki page), and will encourage you to do the same.
  4. We will all complete the module by the end of October and celebrate in our new Python knowledge.


Questions? Send them to lhsu@usgs.gov or post them here. (You must be a CDI member and signed in to post a comment here. Email cdi@usgs.gov to become a member.)


I want this badge. 

  • No labels

18 Comments

  1. Part 1: Python Basics completed.

    Glad I took the time to do this, some thoughts below:

    1. Thought it was solid intro material, even though I've probably gotten through the "beginning" part of many python tutorials in the past.
    2. Having both the script editor and the interactive python section for testing was cool.
    3. I wasn't expecting videos, since the last DataCamp course I took didn't have videos. Usually I strongly dislike sitting through videos. However, I now think of Filip as my friendly python instructor.
    4. For my purposes, I'll probably be doing a lot of simple arithmetic and string manipulations. Is Python good or bad for string manipulation? I'm pretty sure it will be able to do anything I need it to, but is there something else that's a better choice? In the end, I think that using Python and sharing repeatable processes in notebooks (with team members or my future self) will outweigh any deficiencies of the language.

    Hope many of you had positive experiences with Part 1, and would love to hear about your success or questions. 


    1. Python does have a lot of good string manipulation tools

  2. Part 1: Python Basics completed, too.

    I found Filip's arm-waving and bouncing distracting, so I covered him up. His voice was fine, though.

    The exercises seemed like a decent introduction to me.

    Leslie, thanks for leading this training exercise!

  3. Completed Part 2: Python lists

    Things that I am sure to forget because I am learning "Python as a second language":

    • You have to say print(x), not just x, in order to print something out
    • Subsetting with x[start:end] is exclusive of the end index. Argh!
    • The name of a list is just a reference to the list, so you must say y = list(x) or y = x[:] in order to make another copy, not just a y=x.
    • We're working with lists and slices, not matrices. 

    Can you guess: my first language is matlab, and I never took a formal training or course so it's pretty ugly.

    Fun second week, and very relevant for what I hope to do with Python.

    Hope you are all having fun as well!

    1. I also come from a Matlab background, so the indices thing threw me off for awhile, too.  After using Python for ~1 yr, I think I've finally scrubbed that from my brain.  I'm trying to make the full transition to Python.

  4. Coming from a Python background, I wasn't a big fan of the example they used to introduce lists in week 2. The mechanics of how lists are used was correct, but conceptually the key/value store example they used is confusing as there is a separate fundamental data type in Python for this: the dictionary (or dict()).

  5. I got part way through Part 2, and decided 1) I wasn't interested enough, and 2) I got annoyed because, even though my code worked, it wasn't exactly what they were looking for, so it kept telling me I was doing it wrong. Admittedly, my code was less pretty than it could have been, but it still annoyed me that it wouldn't give me credit for code that worked. (smile)

    But thanks again for leading this, Leslie! - I might try again with another course.

    1. Oh well! There's always R for Data Science... 

      1. Yeah - I seem to do better with R for some reason.  (smile)

  6. Did Chapters 1-3 with a buddy. I'm coming at this from not doing much coding for some time, and even then doing it in C++ and Java. My biggest reactions thus far are:

    1. Automatic type detection, cool!
    2. You can mix types within a list? gross.
    3. oh, variables POINT at lists, they aren't the lists. I don't remember enjoying this pointing business in the past...
    4. This function business is interesting - I kind of like it.
    5. When do we get to for loops? (maybe Chapter 4?)
  7. Finished Chapter 3.

    One thing I like is how easy it is to take a break and then come back to the same spot - as long as you leave the tab open, you can do a single chapter over three days!

    Good to learn a bit of the basics behind functions, methods, and packages. Now if only I could familiarize myself with all of the functions and methods.

    I googled what pip stood for: PIP stands for Pip Installs Python or PIP Installs Packages. (https://unix.stackexchange.com/questions/169709/what-does-pip-stand-for)

    I prefer it when the examples are about planets and orbits instead of about house room sizes.

    One more to go!


  8. Finished the last Chapter, on NumPy.

    Final thoughts:

    • NumPy seems more like what I’ve been exposed to in the past.
    • Hope there is some NumPy in my future.
    • We were teased that visualizations are for a future time, but this is the end of this course, so we’ll need to find another course on python visualizations!
    • Very glad that I completed this, even though finding the time was difficult.

    So should our next group learning topic continue with Python, try a DataCamp course in R, or do something completely different?

    1. I'd love to continue on python! I'd also like to see some visualizations. 

  9. This looks like a possibility for a next tutorial to do together on python plotting https://www.datacamp.com/community/tutorials/matplotlib-tutorial-python 

    If others have suggestions then please let me know!

    1. I'd vote for this one or more Numpy.

  10. plotting and more numpy !!!!

    ----how long can we play in data camp before they want $$$$ ?

    1. There are particular popular courses that DataCamp provides for free in order gain interest. For instance I think that for the "Intermediate Python" course (https://www.datacamp.com/courses/intermediate-python-for-data-science), only the first chapter is free, but then you need to pay for the rest of the course. Let's try to find as many open resources as we can.

      I'm going to try to announce/propose a next course at next week's CDI monthly meeting. Any suggestions before then will be taken into account!

      1. Thanks Leslie!

        I'd vote for some more numpy, then plotting, either way this is a good motivation.