R Error: Non-numeric Argument to Binary Operator | How to Fix (Example)

 

This tutorial illustrates how to deal with the error message “non-numeric argument to binary operator” in the R programming language.

Please note that this page illustrates the error message returned by Base R. In case you are looking for the error message “Error in max.item – min.item : non-numeric argument to binary operator” returned by the alpha function of the psych package, you may have a look here.

Table of contents:

Let’s dive right into the example!

 

Example: Reproducing & Fixing the Error Message: non-numeric argument to binary operator

In this Example, I’ll explain how to reproduce and fix the error message “non-numeric argument to binary operator”. First, let’s create an example that reproduces the error:

5 * "three"        # Trying to use character string in equation
# Error in 5 * "three" : non-numeric argument to binary operator

As you can see based on the previous R code, we have tried to use a character string in an equation (i.e. “three”). Unfortunately, this is not possible in the R programming language.

If we want to solve this problem, we need to replace the character string by a numeric value (i.e. 3). Let’s do that:

5 * 3              # Proper equation
# 15

As you can see, the RStudio console is not returning the error anymore. Instead it shows the result of our equation.

 

Video & Further Resources

Would you like to learn more about error messages in R? Then you might have a look at the following video of my YouTube channel. I explain the R programming code of this page in the video instruction:

 

The YouTube video will be added soon.

 

Besides the video, you could have a look at the other articles of my website.

 

Summary: In this article you learned how to handle the error non-numeric argument to binary operator in the R programming language. Tell me about it in the comments, in case you have additional questions.

 

Subscribe to the Statistics Globe Newsletter

Get regular updates on the latest tutorials, offers & news at Statistics Globe.
I hate spam & you may opt out anytime: Privacy Policy.


6 Comments. Leave new

  • In need help for a test cromcah’s alpha: Error:non-numeric argument to binary operator, how I can resolve it?

    Reply
  • Hi Joachim, I’m in the same boat as Hubermane. I’ve used this syntax with other measures and haven’t run into the same issue. My code:

    d_resist$res_1 <- varRecode(d_resist$mses_30_1, c("Not at all", "A little", "Somewhat", "Quite a bit", "Very much"), c(1, 2, 3, 4, 5))

    # same for items 2-21

    res_items <- c("res_1", "res_2", "res_3", "res_4", "res_5", "res_6", "res_7", "res_8", "res_9","res_10", "res_11", "res_12", "res_13", "res_14", "res_15", "res_16", "res_17", "res_18", "res_19", "res_20", "res_21")

    psych::alpha(d_resist[, res_items])

    "Error in max.item – min.item : non-numeric argument to binary operator"

    I'm assuming it's because the recoded items are factors with 5 levels and not numeric, and the vector is a character vector, but the same was true of other measures and I didn't get an error message.

    I'd be grateful for your insight!

    Reply
  • KRITIKA GUPTA
    July 8, 2021 5:40 pm

    Error in start[2L] – 1 : non-numeric argument to binary operator

    Hii, i am getting this error and i am unable to figure out where I went wrong. mY syntax was as follows:
    variable_fdi <- ts(FDI, start= c("2016", 4),end = c("2021", 3), frequency = 12)

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.

Menu
Top