I am my own experimental subject.

2021-11-29 | #33

  1. Time: 6:45-7:30am

  2. Activity: use panda to read csv, how to slice panda objects

  3. Reflection: Rather than counting the number of columns, panda allows you to index using "string". This makes everything so much clear.

  4. Motivation level: 5 out of 5

2021-11-28 | #32

  1. Time: 6:10-7:25am

  2. Activity: numpy.genfromtxt() and Boolean array

  3. Reflection: I understand the concept but have not reach the 'fluency' that I hope to achieve. practice!

  4. Motivation level: 5 out of 5

2021-11-27 | #31

  1. Time: 6:35-7:20pm

  2. Activity: learned the concept of vectorization, ndarray slicing, ndarray calculation, function vs. method

  3. Reflection: Do I miss Matlab? Nope.

  4. Motivation level: 5 out of 5

2021-11-25 | #30

  1. Time: 12:50-1:55am

  2. Activity: I finished my second project. The project was trying to understand which type of posts on hn receive more comments and whether there is a time of the day when the posts would receive more comments.

  3. Reflection: I finished the project without difficulty. In fact, I finally understand how to use 'sorted' properly for list or dictionary. Feel good about it. Practice is the only way to get fluent in a language. Today also marks the 30-day anniversary for my dataquest adventure. 1 step down, 7 steps to go!

  4. Motivation level: 5 out of 5

2021-11-24 | #29

  1. Time: 7:10-8:30am

  2. Activity: started my second project!

  3. Reflection: compared to the first project, I felt I am more efficient this time. Can't wait to finish it.

  4. Motivation level: 5 out of 5

2021-11-23 | #28

  1. Time: 7:30-8:30am

  2. Activity: differences between module/class/constructor, organize the date entries with datetime.strptime (formatting) and datetime.strftime (retrieving).

  3. Reflection: coding might be the easiest way to make your life easier...

  4. Motivation level: 5 out of 5

2021-11-22 | # 27

  1. Time: 8:00-9:50am

  2. Activity: learned the concept of the object-oriented programming. practice how to create new object class, how to assign an attribute at instantiation, and how to define a method inside a class

  3. Reflection: I still don't fully grasp the point of '__init__()' but I guess it becomes more useful as the number of methods defined in a given class increases.

  4. Motivation level: 5 out of 5

2021-11-19 | # 26

  1. Time: 6:30-7:30am

  2. Activity: practice how to format the text (format doc)

  3. Reflection: Coding is really rewarding. I can see how people get addicted to gaming or cooking. But I can't wait to work on real projects. Need something more challenging.

  4. Motivation level: 5 out of 5

2021-11-18 | #25

  1. Time: 8:30-9:10pm

  2. Activity: reduce dimensionality (list slicing + string stitching) and dictionary (frequency table).

  3. Reflection: feel that I was basically repeating the same steps for last project. learned a new syntax: isinstance(input, int (or float)).

  4. Motivation level: 4 out of 5 (Side benefit of coding: calming)

2021-11-17 | #24

  1. Time: 5:30-6:40pm

  2. Activity: data cleaning part II > replace the substring, split the string, convert the string.

  3. Reflection: it is always a good rule of thumb to test the new function with the makeup dataset before you apply it to the real dataset. My new life motto: " What is the logic behind your decision? "

  4. Motivation level: 5 out of 5

2021-11-16 | #23

  1. Time: 9:30-10:10pm

  2. Activity: practice the data cleaning basics, e.g., import dataset and replace substrings

  3. Reflection: have not figured out how to iterate through every column of each row in a list. The goal is to write a function that will automatically check and correct all the unwanted substrings.

  4. Motivation level: 4 out of 5

2021-11-15 | #22

  1. Time: 5:10-6:30am

  2. Activity: execute the plan and it went well.

  3. Reflection: Became better at 'sorting', which is my favorite thing to do haha. I am basically done with my first Data science project. but I want to polish my code and share it before moving onto the next stage.

  4. Motivation level: 5 out of 5

2021-11-14 | #21

  1. Time: 9:11-10:14am

  2. Activity: determine the strategy for analyzing the dataset. The goal is to recommend an app genre for developing a new ios app. My rationale is that the recommendation should based on 'popularity', 'targeted user age', and 'rating'. I hypothesized that the result may vary depending on whether the analysis is done based on the 'accumulative rating count over all versions' or 'rating count for the current version only', so I am going to separate my analysis.

  3. Reflection: Planning is fun! Can't wait to start doing the analysis.

  4. Motivation level: 5 out of 5

2021-11-13 | #20

  1. Time: 7:40-9:00am

  2. Activity: debug. agh!

  3. Reflection: debug is fun but I wonder if it is actually bad that I spent 80% of my time on 'nice to have' features? (question of my life I guess...)

  4. Motivation level: 4 out of 5

2021-11-12 | #19

  1. Time: 7:00-9:20am

  2. Activity: removed the non-free apps from the dataset and determined which genre of apps is most popular

  3. Reflection: spent more time than expected on sorting the data. After finishing the dataset, I want to try if I can compile all the required steps for cleaning data into one function.

  4. Motivation level: 5 out of 5

2021-11-10 | #18

  1. Time: 7:40-9:00pm

  2. Activity: write a function to remove non-English apps in the dataset.

  3. Reflection: tbh I am exhausted but I really want to keep my coding routine. I did it and I am HAPPY!

  4. Motivation level: 5 out of 5

2021-11-09 | #17

  1. Time: 9:10-11:00am

  2. Activity: remove the duplicated row which has lower review numbers (if the review number is equal, keep the first entry)

  3. Reflection: "AND" and "&" mean two different things. Interesting...

  4. Motivation level: 5 out of 5

2021-11-08 | #16

  1. Time: 5:00-6:50am

  2. Activity: find duplicated entries in the dataset

  3. Reflection: can't believe that I've already forgotten how to make a frequency table.... It only means that I should practice more!

  4. Motivation level: 4 out of 5

2021-11-07 | #15

  1. Time: 6:00-6:50am, 4:40-5:15pm

  2. Activity: successfully debug! (yay!) I also wrote a new function to merge the steps of checking and removing.

  3. Reflection: It felt great when you learned something new in the first hour after you woke up!

  4. Motivation level: 5 out of 5

2021-11-06 | #14

  1. Time: 6:30-7:00am, 8:00-9:15pm

  2. Activity: write functions to clean the dataset

  3. Reflection: (1) learning efficiency was low... tried to figure out how to extract the variable name as a string but have not found a solution so far. (2) not sure why my loop ran twice... (3) decided to change a way of tracking so I don't get discouraged by my perfectionism. Keep going!

  4. Motivation level: 3 out of 5 (debugging is just not my favorite Saturday activity)

2021-11-04 | #13

  1. Time: 5:30-7:15am

  2. Activity: Started my first project! defined the goal of the project and prepare the dataset for analysis

  3. Reflection: excited! can't wait to analyze the data.

  4. Motivation level: 4 out of 5 (felt the gravity of other deadlines...)

2021-11-03 | #12

  1. Time: 7:30-8:00pm

  2. Activity: set up Anaconda

  3. Reflection: It was a long day. Lots of things happened but I am happy that I still put in time to continue learning.

  4. Motivation level: 3 out of 5

2021-11-02 | #11

  1. Time: 6:30-8:00am

  2. Activity: (1) learning how to set up jupyter notebook (2) I self-taught how to change the variable name for each loop! so excited!

  3. Reflection: (1) efficiency was a bit low but the creativity was high today. (2) didn't figure out why the sequence was inverted when I ran the loop...

  4. Motivation level: 4 out of 5 (physically tired from the intense experiments in the past two days...)

2021-11-01 | #10

  1. Time: 4:00-5:30am

  2. Activity: the concept of tuple, define function with multiple inputs/flexible outputs, global vs local variables, python documentation

  3. Reflection: (1) sleepy but managed to went through the learning session just fine. excited about learning how to define multiple inputs/outputs for a function. (2) I didn't forget a single ":" today so I counted that as an improvement.

  4. Motivation level: 5 out of 5

2021-10-31 | #9

  1. Time: 8:30-10:30am

  2. Activity: how to define a function, parameter vs argument, debug

  3. Reflection: (1) Can't get over the excitement that I am writing python functions! things are getting more and more interesting! (2) putting in solid two hours learning during weekend morning seem working well for me. It might be luxury and sometime impossible to do the same during the weekdays but I should try to do it every weekend. (3) remember to add ":". remember it remember it remember it!

  4. Motivation level: 5 out of 5

2021-10-30 | #8

  1. Time: 6:30-8:40am

  2. Activity: dictionary, frequency table

  3. Reflection: A good studying day. Morning is best. Felt that my python is improving.

  4. Motivation level: 5 out of 5

2021-10-29 | #7

  1. Time: 7:30-8:40pm

  2. Activity: dictionary, if/else/elif (I finished the python training I. Yay!)

  3. Reflection: felt really sleepy after 40min of study. Decided to get up and walk around. Felt much better and finished the desired progress today! Learnt two things: (1) avoid studying at night as much as possible. (2) refill the oxygen of the brain by walking is a great solution to fatigue.

  4. Motivation level: 4 out of 5 (mostly because I was tired after a day of work...)

2021-10-28 | #6

  1. Time: 4-5:30am

  2. Activity: logic operator

  3. Reflection: (1) I constantly forget to add ":" and indent for the logic operator. (2) I didn't study in the past two days because I felt exhausted after the workshop. I don't want to break my study routine for more than two days so I decided that the first thing I would do when I woke up this morning was to study. It worked.

  4. Motivation level: 5 out of 5 ( I am almost reaching the end of the first training session. Yay!)

2021-10-25 | #5

  1. Time: 9:50-10:20pm

  2. Activity: finally, the for loop!

  3. Reflection: Another tough day. Happy that I managed to finish learning before bed. Not quite sure if I fully grasp the concept of "open file".

  4. Motivation level: 3 out of 5

2021-10-24 | #4

  1. Time: 7-8pm

  2. Activity: learn how to make a list, open/read csv files, retrieve values from a list (indexing)

  3. Reflection: Had a tough time to focus. Have been in Janelia Junior Scientist Workshop starting 7am in the morning and gave a presentation in the afternoon. Physically tired. Decided to stop at 1hr mark. My learning efficiency is low.

  4. Motivation level: 4 out of 5

2021-10-23 | #3

  1. Time: 5:45-7am

  2. Activity: refresh Python syntax: assign/update variables, int/float/round, arithmetic

  3. Reflection: (1) lose focus after 50min. maybe it is better to break up thy study sessions to stay focused. (2) try to set up my "focus" routine. used rain sound as the background music today but felt a bit sleepy after a while. The rain sound seems to calm me down efficiently. Current routine: wake up > drink warm water > play the rain sound > study.

  4. Motivation level: 5 out of 5.

2021-10-22 | #2

  1. Time: 5-6am

  2. Activity: (1) start my first lesson on Dataquest. Just basic python stuff. Good to refresh the memory of the syntax. (2) Read introductory vignette of Seurat. Installed the R package.

  3. Reflection: (1) I need to block off a specific time slot for efficient learning. (2) I guess I will be using R and python at the same time since Seurat is built on R.

2021-10-21 | #1

Time: 7-9pm
Activity: search online resources and decided a game plan for this learning project