Help us Beta Test our new "R Fundamental Course"

Dear all,

We are optimizing our fundamental courses in the R path to make them more engaging and cover more concepts thanks to your comments and feedback. The first of these courses is ready. It is available as a beta version for free . Take a look if you are interested! The course is for beginners, so you can take it without any prerequisite and even if you are not learning R right now.

Here are the link of the missions in the course (in that order):

We are interested in your feelings, comments, feedback, and concerns that you can post here. Let’s keep this thread for all our interactions.

Thank you for your help!



These updates are fantastic! R is my favorite data science language and R courses were my first courses in Dataquest :laughing:

I remember that the first few missions were quite challenging, and I really love how these four courses could serve as a bridge to the vectors, list, and matrices lessons (the image that shows the workflow complete with the tidyverse packages in the data analysis workflow is my favorite)! And it’s awesome to see ggplot2 in action so early in the course!


How can i participate on this program


Just finished the first mission R basics

Feedback is as follows

Mostly good with exception of the screen where you ask the user to perform calculations using fruit data. I had to see the answer to verify what was being asked (the hint wasn’t helpful). Also, there were screens where code is simply answering questions. I would revise this and include having the user type in some very simple code so that way when we get to the next missions the user is used to typing in code and not just answering questions in code.


Completed R basics. I really like how the course does justice to beginner programmers and really sticks to the core fundamentals and basics without bombarding them with the technical programming jargon. I really appreciate the effort taken to explain what a program, lines of code, errors and programming is.

Coming to the topic programming in R itself, the explanation is very concise and easy to follow through and understand. And, I have a completely different opinion to what our friend manandwa has mentioned above. I liked the way the course sticks to answering simple questions (in this mission) which helps the learner understand the absolute basics thoroughly, before jumping to coding.


Hi @inwumohjude. To participate you can begin the first mission and progress through the following missions if you would like. We’d love to hear any feedback you have. Thank you!

1 Like

Hi all,
I just finished the first course and have some feedback, hopefully, useful for you:

With respect to page 8:

  1. This sentence generates a bit of confusion (IMHO):

R allows only one instruction per line of code, e.g., if you enter two logical literals on the same line, you will get an error. This justifies why at each instruction, we insist on having one answer per line."

When I read this, I could interpret that is not allowed to write for example 5*4 + 3 - 129, i.e. 3 instructions in one line. I don’t know if you mean only one logical expression instead of only one instruction.

  1. It may make sense to shift this page to one of the first pages. I think this has sense since the user will interact with the system and the information on page 8 regarding errors from the answer checking process would be more useful at the beginning.

  2. The lesson starts with 2 TRUEs and 1 FALSE:


and ends with 1 TRUE and 2 FALSEs:


The exercise instructions say:

To correct the error, we need to split the second line in two as follows.

Then the beginning text is wrong.

In page 4, I think there is a typo:

the literal value 1 is a of Logical data type."

I think "a " should not be there.

In page 6, I think there is a typo

character work

Shouldn’t be character word?

Kind regards!


Just completed Mission two from the list above - Arithmetic Expressions And Variables. I liked the practice problems and questions. However, I feel that some of the notes in the learn section which could be explained in more simple terms were put forth in complex sentences.

For instance, the one that caught my attention is was the following from in page 7:

A variable assignment workflow consists of putting the value at the right of the assignment
symbol in the memory space allocated to the variable at the left of the assignment symbol represented by its name.

This could have been expressed in more straightforward and easy sentence. From a beginner’s perspective, I think the above explanation to variable assignment workflow is a bit confusing.

And in page 2 the description for integer division and modulo could have been structured differently, in my opinion.

The modulo x %% n expresses the rest of the integer division of x by n

The above sentence from page 2, could have been something like "The modulo x %% n returns the remainder of a integer division of x by n".

The above feedback is based on keeping in mind that the target audience of this course is beginners. Hope this helps. :slight_smile:



I have gone through the missions and guided project. These are some of my observations:

Introduction to Programming in R

  • In slide 1: "Dataquest recommend that we take a look at this document. The link attached to this document does not work correctly. It returns the same page. I was able to reach this conclusion because the link in slide 4 of Data Analysis Basis in R to connect to the JSON mission worked correctly.

  • In slide 4: It reads 0.00009 Ouput: 9e-05 in the R-Script printed on the screen. But it reads 0.000099 Ouput: 9.9e-05 in the text following. Although what was been described follows logically, I think there should be consistency.

  • In slide 6: The last paragraph about Character has a link entire mission which I think does not work correctly.

  • In slide 7: The overall cost of mangoes sold on day 2 using values in `item sold` and `selling price` columns. I found that revenue and cost were been used interchangeably. Should it be so? I think multiplying with selling price gives revenue.

  • In slide 8: True False True changed to False True False.

Arithmetic Expression and Variables

  • In slide 2: Assuming the selling price of lemon is $ `5` , how many lemons is sold if $ `128` .... I think it should be revenue not cost.

  • In slide 8: var_1 and var1 inconsistencies in the note and printed R-script.

  • In slide 9: So far we've used space characters between numbers and operators ( `+` , `-` , `*` , `/` , `**` are operators) Nothing was said about ** in the course up to this point, if I recall correctly. Exponentiation was represented by ^. Although R accepts both.

Overall, it was a great introductory course.


Regading mission 1:
A personal suggestion: an improvement on reducing the text quantity to make it more fluent. And some observations on the steps:

  • STEP 1 - the graph says “advanced python”, it should be “advanced R” isn’t? Also the bulleted list on the next missions is confusing, maybe add a title or an explanation
  • STEP 2 - link “this document” doesn’t work
  • STEP 4 - found exercise 2 statement not clear, the statement before exercises on STEP 5 helps: “Let’s use logical and integer literals to answer the following questions.”
  • STEP 7 - would be great to have that table as a dataset

Just completed Arithmetic Expressions and Variables

Overall the course was well done and agreed with @monorienaghogho about the power operator didn’t see that in the course so that needs to be introduced.

This also helpful for those in the advanced parts of the Data Analyst for R pathway (It is a good review of the basics)


I have gone through the four missions - Intro to Programming in R, Arithmetic expressions, Data analysis and Rstudio.

Overall, it is a great learning experience. Missions are easy to follow with gradual progression from basics to giving a chance to quickly visualize data along with insights from it. For anyone studying to make a career change into data analytics, such commentary on findings is a great start to get a grasp of how to communicate their work meaningfully. I liked that R course has touched upon that aspect early on.

Transitioning into advanced missions starts out with practicing the techniques from the previous mission. As it may not always be possible to study mission after mission at a stretch, this is very helpful in recap’ing and solidifying what was learnt before progressing on.

I also appreciated having a list of learning objectives at the beginning of each mission and summary of what we learned at the end. This makes practicing/reflecting on each mission convenient as we advance.
There is plenty information in these 4 missions for beginners to get upto speed on R quickly. The guided project to setting up Rstudio is a very well covered topic with nuggets to note for using later on.

Other feedback:

  • As others have already shared, earlier sections have enough typos and wordy/long explanations to give a negative taste for the quality of teaching. Some examples:
    on 3/10 It exists in R five basic data types:…
    on 5/10 They are also use to express the quantity…
    on 2/11 the expression 17L %/% 5L yields 3 because 5 can be found three times in 17 and it remains 2 .
    On 4/11 the result yields by R is correct.
    On 6/11 we need to we type its name
    On 4/12 We have a mission( dedicated to the exploitation and extraction of JSON files( may be typo for exploration?)
    On 10/12 Let now interpretation this graph

  • On 6/11 and in similar cases where DQ provides example code, please add a line of comment such as “Add your code below” just as in other courses to avoid any confusion. In this case, I assumed DQ provided the code for question 1 and even with correctly entered code for the rest of the questions, errors created some frustration and wasted time.

  • As @fedepereira mentioned, on 8/10 certain order of TRUE/FALSE statements has some issue and confuses the learner .

Doesn’t work:

  • Some of the questions did not seem clear enough for me. For example on 3/12:
    • What is the type of the fourth column?
    • Assign the answer to the variable named col_4_type.
    • The variable is expected to be character literal 'either “numeric” or "character"

  • Emphasize Coding style wherever possible ( from the start ) as everyone is going to be programming with these skills.

  • On 4/12

Here is how the first six rows of our dataset csv-file, monster_jobs.csv , looks like.

While we were looking at another file `monster_jobs_clean.csv’ for practice until then.

Jumping into something entirely new at once, like this example before introducing how to perform that operation, can be confusing to learners.


Completed Data Analysis Workflow. Overall, the course content is good and it does give a brief idea to the learner what data analysts do. I did find many typos in the learning notes of this mission.

On page 1, the following line has a typo. I think it should be …,followed by the data cleaning…

then the importation of data, following by the data cleaning

On page 6, the notes begin with a typo.

Let characterize the dataset, monster_jobs.csv, we have imported…

I think it should be

Let’s characterize …

Also, the hint on the same page has typos.

Remeember to not removing the existing code from the editor for the sake of our answer checker.

Remember is misspelt and it should be remove instead of removing

On page 8, again there’s a typo.

Similarly to the function head(), we can use the function tail()…

It should probably be Similar to the...

On [page 9], (,in my opinion, before jumping into ggplot straightaway, I think a brief introduction about the package in a sentence or two or a link to the website would make things better.

On page 10, I think the following sentence has typos and could be restructured.

Let now interpretation this graph with the previous scatterplot with some annotations in order to answer our question.

Hope this helps.

Also completed the Guided Project. The walk through is simple, clear and easy to follow. Overall, this course(all 4 missions included) for beginners achieves the purpose of introducing programming in R. Great work! :+1:



Finished the 1st mission: Introduction to Programming in R

It was good.

Couple things that took me a second to realize what was being asked:

In step 3, wasn’t for sure if I was I supposed to type the string literals and validate if they represent True or FALSE respectively? Or determine myself whether each statement is true or false?

In step 7, I couldn’t tell if I was supposed to be using a dataframe with purchase price and selling price columns. Maybe just clarify using a df['column_name'] isn’t necessary here like in Python pandas.

Comparing and contrasting R with Python would be helpful for highlighting the differences. Overall, as others mentioned, very easy to follow! Look forward to future guided projects in R!

Update - regarding Arithmetic Expressions and Variables

on step 2:
# (Answer this question with TRUE or FALSE literals instead) The modulo's operator symbol is %.
Not sure what the point of writing FALSE here was. At first I was thinking I needed to do something to make the result evaluate to TRUE or FALSE

on step 5:
When you explained An operation between two values of different data types yields a result in the highest data type. From the highest to the lowest data type, we have Numeric, Integer, and Logical.
Thanks for explaining this concept: useful to know!

on step 8: instruction corrections.
allow you performing (elementary) several kinds of data science tasks
allow you to perform several kinds of elementary data science tasks

It allows identifying literals/variables data type. It is used by indicating to the function in brackets the name of the variable whose data type we want.

It allows us to identify literal and variable data types. It is used by indicating to the function in brackets the name of the variable whose data type we want.
We use it by indicating in the brackets the function name of the variable whose data type we want.


I have just finished the first mission R basics. Overall it was a great experience. The DataQuest explanations are very thorough and precise. I also appreciated the mission’s objective and a final wrap-up of what we’ve learned so far; it was also great to know what we’ll learn in the next missions.

As for the feeback:

  • On slide 3/10 you introduce five R data types: Logical, Integer, Numeric, Character and Complex. Why don’t refer to them as Atomic vectors? Every tutorial will name somehow, so it’s better for a begginer to be intoduced early in the course the the vectors. Another thing that I didn’t get is why Integer and Numeric types are two separate data types. If I’m not mistaken Integer and Double vector types are Numeric vectors. In my opinion it’s better to introduce them as they are to help a beginner to grasp the terminolgy so that they are not lost in other tutorials.
  • On slide 4 you could expain at which number of zeros R starts to use the scientific notation (so 4 zeros).
  • On slide 5 you may indroduce typeof() to show what are the types of, for example, 125 (double) and 125L (integer) so that we can immediatelly see the difference when using L.



Dear All,

I’ve just finished my first mission " R Basics". It was great experience performing beta testing on this course. Thank you so much for the opportunity!

Overall the course content was crystal clear and very easy to understand for anyone. However, I’ve observed few points from my end. Below are as follows:

Slide 1 - The Visual-graph says “advanced python” in step 7, I guess it should be “advanced R” … Right?

Slide 2 - Dataquest recommend that we take a look at this document. . We should fix this documentation link as it is not routing to appropriate place.

Slide - 6 I believe we also have a same link issue here , this has to fixed. Character is an essential data type and knowing how to deal with it is an asset in analyzing your data. So we’ve devoted an entire mission

Slide - 8 I am wondering and confused how TRUE FALSE TRUE became FALSE TRUE FALSE. I believe we should justify this explanation.

I personally feel that this is a great kick start course for the people which wants to pursue/ transit their career in R.

Thanks a lot again.


I have gone through the entire course.

The course provides a good overview of data science and programming in general before introducing the learner to the use of R language for data analysis. It focuses on the basics of programming in R and explains well these basics such that the beginner learner will not feel thrown in at the deep end of R programming. The important features of RStudio are well explained to make it easier for the learner to use this vital tool in his data analysis work. Overall, I will say the course is a great introduction to the world of data science through R.

Here are some feedbacks on the first mission. Feedbacks on the other missions will follow in separate posts.

Mission 1: Intro to Programming in R

  • In the quote below, the transition to the second paragraph is not smooth. A line may be added at the end of the first paragraph to link the paragraphs so the appearance of data science at the beginning of the second paragraph doesn’t seem surprising, e.g., This has made data science a popular discipline in recent years.

In the digital age, data has become very important. Its analysis permits discovering hidden information that contributes, for example, to understanding a process or improving a business.

What is data science Simply put, Data science is an interdisciplinary field that aims to extract knowledge from data. This extraction involves several stages of data exploration, manipulation, and analysis.

  • The paragraph on Why people should learn data science provides good justification/motivation for learning data science. The paragraph after this, When to use/learn Data Analysis, may be restructured and combined with the preceding paragraph or deleted as it doesn’t add much to enrich the content flow.

  • I feel the last 2 lines of the paragraph on Where to learn data science should read as follows:

To help you gain the skills you need, Dataquest provides courses and supports you through your learning journey. Our courses are organized into a curriculum that you can follow without worrying about what comes next.

Similarly, the last line of this step should read as follows:

You don’t need any prior technical knowledge to complete this course, so let’s dive right in. By the time we’re finished, you'll be analyzing data!

then in the below line should be them.

We can see that R recognizes these elements and displays then as is.


Mixing quotes and apostrophes in the same character value is not admitted. For example "Hello" won’t represent a character work if we have written, "Hello' or 'Hello" .

It seems work should be word.


For the rest of this mission, we will be using a dataset extracted from a dataset of a fruit market. This database contains:

I feel the above line should read: For the rest of this mission, we will be using data extracted from a dataset of a fruit market. This dataset contains:


Feedback on Mission 2: Arithmetic Expressions and Variables

  • The second occurrence of we should be deleted from the following line:

To display the content of a variable, we need to we type its name.


  • I wanted to know the 2 packages installed with R after reading the last line of the below paragraph.

The power of R comes essentially from the availability of a bunch of built-in programs that allow you performing (elementary) several kinds of data science tasks. These small programs are called functions . The functions are grouped by topic/utility called package . R is installed by default with two packages containing a useful function package.

  • The following line needs editing:

A whole mission, in our path, is devoted to how to manipulate/create functions being more efficient in performing your own tasks.


  • We also use their # to add information to the first line code, and we can see that what we’ve written is not taken into account.

The phrase upto the # symbol should be: We also used the #


Feedback on Mission 3: Data Analysis Basics in R

  • Bold text in the below paragraph may be replaced by data collection, followed by and Communication, respectively.

This workflow starts from a data collection, then the importation of data, following by the data cleaning and the exploration of its content (through transformation and visualization). The communication is the last step where some reports are produced to provide an interpretation and answers to the question.

  • I love the data analysis workflow diagram and how it shows the application of the tidyverse packages in the data analysis process. It certainly gives the learner a sense about the data analysis process and can serve as a guide in carrying out analytic projects.

However, I think the diagram captures only the statistical approach to solving problems where you start with a question and then use data to answer the question. In some tasks, especially those related to machine learning, you may start with data and find out what the data is saying. For example, this video explains the statistical and machine learning approaches to solving data problems (start from the second minute). Also, IBM has introduced a data science methodology which follows the “top-down” approach of first starting with a question in data science projects. However, they also acknowledge the “bottom-up” approach of looking into large volumes of data to identify business goals suggested by the data.

So my suggestion is that the workflow diagram should not be characterized as the only approach to data analysis work.


  • R provided should be R provides

R provided an impressive toolset to support the data analysis workflow

  • Below, the open phrase should be Once we have installed packages,...

Once we installed packages, we won’t need to do so with each time we open our R session (something we’ll get more context for in our guided project where we’ll set an R programming environment on our own computer).


Below text doesn’t read right

A dataset is typically stored on our computer under a file.


name at the end of the last line may be deleted as it is a bit confusing. by assigning it to a variable reads right for me

The readr package contains a function, read_csv() , that’s specifically for importing data in CSV format into R. We can store the imported data as a dataframe by assigning it to a variable name.


  • The second occurrence of our should be deleted.

As for data cleaning skills, we’ll cover them in step 2 of our journey in our the Dataquest data analysis R path.

  • It is not clear where in the learning section the below instruction refers to. Also, is monster_jobs supposed to be monster_jobs_clean ? I think the instruction should read: Compare the result to the captured table view of the monster_jobs_clean below.

Compare the result to the table view of the monster_jobs in the learning section.


  • These 2 paragraphs may be combined to describe how the color parameter of qplot() will be used to differentiate salaries by job type. The following line should be deleted: To do this we will use colors.

On the previous screen we visualized the salaries offered in data science. In this screen, let’s differentiate these salaries by type of job. To do this we will use colors.

To do so, we’ll use the same function, qplot(), adding the color parameter to specify how R should color our scatterplot.

  • It seems bold the should be deleted from below text.

The result is a scatterplot where a dot represents the minimum salary of the a given job identifier with a color for each type of job.

The data analysis workflow diagram does not show in the downloaded mission takeaway PDF document.


Feedback on Mission 4: Project - Install RStudio

  • Repetition of the and also the hyperlink of course thread in the community refers back to STEP 3 and not to any community thread.

Users of different operating systems generally follow the same steps, but if you find an operating system-specific differences or have operating system-specific installation questions, feel free to reach out on the the course thread in the community.

  • Below, point 2 is clearer if it reads: Install RStudio by dragging downloaded file into Application folder

Then, let’s follow the appropriate installation instructions for our computer’s operating system:

  1. Select the Mac OS X version.
  2. Install RStudio by dragging into Applications folder.

like below is better than like this one in the below text.

Scroll down, and try typing a few expressions like this one. Press the enter key to see the result.


  • I felt the opening phrase should read; We'll see any objects we creat....

We’ll see any objects we created, like var_1 , under values in the Environment tab.

  • let's in below text may change to we have to or we should

If we want to remove selected objects from the workspace, let’s select the grid view from the dropdown menu:

Delete the in the following text

Make sure to download this dataset and store it in the your working directory .


  • we written should be we have written

As we worked through the previous missions in this course, we written code in a text editor and console

  • I feel the below text may not easily explain how to add comments to code to a beginner. Adding another line say: To add a comment to a code, precede the comment with the hash # symbol (# like this), may help.

As we write scripts, it’s good practice to get used to adding comments to them to explain our code ( # like this )


  • bring should be deleted from below text

To bring help you practice more, here is another dataset prepared for you (the original version can be found here).

  • Hyperlink of course thread in the community points back to STEP 9

Please, publish your findings in the course thread in the community.