R syntax can be a bit confusing. The data.table component attempts to create a higher level abstraction of tables and processing them. This component it quite powerful. In some cases the name of a variable to use is a character string, sometimes not. It's common to pass an empty argument, among other things. This is not unusual for R, but takes a bit of noodling to overcome.

Data Camp does a good job of teaching how to use R for data science. I've found the data.table Cheat Sheet extemely useful for instant. Here's a handy link:

https://s3.amazonaws.com/assets.datacamp.com/blog_assets/datatable_Cheat_Sheet_R.pdf