An R function with a parameter that accepts a data.frame column can’t evaluate the column argument until it is first ‘quoted’, followed by an ‘unquote’ within the dyplr function. ‘Quote’ a column using enquo(), then ‘unquote’ it using !!.
A little white space between R Markdown sections gives the reader a little pause in the story before changing the subject otherwise all the cells get smooshed together by default and it ends up looking like one long run-on sentence.
To emphasize value differences in a bar chart, using gradient colors is a nice option. ggplot makes it easy with scale_fill_gradient2().
Writing data to a file using write.csv failes to retain column data types. A better way to save/restore data objects to/from files is by using RDS and RData.
Instead of a cumbersomely nested ifelse statement, use dplyr’s mutate and case_when functions instead.
Convert data.frame factor columns to character columns before trying to replace NULL values.
Find NULLs in a dataframe using is.na().
Ctrl-Z to the rescue. ‘nuf said.
Adding temporary print statements to troubleshoot Python code is quick and dirty. And messy. Incorporating logging into your code habit is a great alternative to relying on ad-hoc print statements that just need to get deleted later.
Save a Google Colab notebook to another format, such as HTML or PDF.
When HTML files on GitHub are too big to render, here’s a quick work-around.
Use p2j to convert Python source code to Jupyter Notebook.