Bird
Raised Fist0
R Programmingprogramming~5 mins

Vector arithmetic (element-wise) in R Programming

Choose your learning style10 modes available
Introduction

Vector arithmetic lets you do math on lists of numbers all at once, making calculations faster and easier.

Adding daily temperatures from two different cities to compare combined heat.
Calculating total sales by adding sales numbers from two different stores.
Subtracting expenses from income for multiple months to find monthly profit.
Multiplying quantities and prices to find total cost for several items.
Dividing total distance by time for multiple trips to find speeds.
Syntax
R Programming
result <- vector1 + vector2
result <- vector1 - vector2
result <- vector1 * vector2
result <- vector1 / vector2

Vectors must be the same length or R will recycle elements, which can cause unexpected results.

Operations are done element by element, like adding each pair of numbers from the two vectors.

Examples
Adds each element: 1+4, 2+5, 3+6 resulting in c(5, 7, 9).
R Programming
a <- c(1, 2, 3)
b <- c(4, 5, 6)
sum <- a + b
Subtracts each element: 10-1, 20-2, 30-3 resulting in c(9, 18, 27).
R Programming
a <- c(10, 20, 30)
b <- c(1, 2, 3)
diff <- a - b
Multiplies each element: 2*3, 4*5, 6*7 resulting in c(6, 20, 42).
R Programming
a <- c(2, 4, 6)
b <- c(3, 5, 7)
product <- a * b
Divides each element: 8/2, 16/4, 24/8 resulting in c(4, 4, 3).
R Programming
a <- c(8, 16, 24)
b <- c(2, 4, 8)
quotient <- a / b
Sample Program

This program adds temperatures from two cities day by day to find the combined temperature.

R Programming
temps_city1 <- c(20, 22, 19, 24)
temps_city2 <- c(18, 21, 20, 23)
total_temps <- temps_city1 + temps_city2
print(total_temps)
OutputSuccess
Important Notes

If vectors have different lengths, R repeats the shorter one to match the longer, which can cause mistakes.

Use functions like length() to check vector sizes before doing arithmetic.

Summary

Vector arithmetic applies math operations to each pair of elements in two vectors.

Vectors should be the same length to avoid unexpected recycling.

This makes working with lists of numbers easy and fast.

Practice

(1/5)
1.

What happens when you add two vectors of the same length in R, like c(1, 2, 3) + c(4, 5, 6)?

easy
A. The vectors are concatenated into one longer vector.
B. Only the first elements are added, the rest are ignored.
C. Each element in the first vector is added to the corresponding element in the second vector.
D. An error occurs because vectors cannot be added.

Solution

  1. Step 1: Understand element-wise addition

    In R, adding two vectors of the same length adds each element from the first vector to the matching element in the second vector.
  2. Step 2: Apply addition to given vectors

    Adding c(1, 2, 3) and c(4, 5, 6) results in c(1+4, 2+5, 3+6) which is c(5, 7, 9).
  3. Final Answer:

    Each element in the first vector is added to the corresponding element in the second vector. -> Option C
  4. Quick Check:

    Element-wise addition = Each element in the first vector is added to the corresponding element in the second vector. [OK]
Hint: Add vectors element by element when lengths match [OK]
Common Mistakes:
  • Thinking vectors concatenate instead of adding
  • Assuming only first elements add
  • Expecting an error for vector addition
2.

Which of the following is the correct syntax to subtract two vectors a and b element-wise in R?

easy
A. subtract_vectors(a, b)
B. subtract(a, b)
C. a %minus% b
D. a - b

Solution

  1. Step 1: Recall vector subtraction syntax in R

    In R, element-wise subtraction of vectors uses the minus operator - directly between vectors.
  2. Step 2: Verify given options

    Only a - b is valid R syntax for element-wise subtraction. The other options are not built-in R functions or operators.
  3. Final Answer:

    a - b -> Option D
  4. Quick Check:

    Use - operator for vector subtraction [OK]
Hint: Use '-' operator directly between vectors [OK]
Common Mistakes:
  • Using non-existent functions like subtract()
  • Trying special operators like %minus%
  • Confusing subtraction with other functions
3.

What is the output of the following R code?

v1 <- c(2, 4, 6)
v2 <- c(1, 3, 5)
result <- v1 * v2
print(result)

medium
A. [1] 2 4 6 1 3 5
B. [1] 2 12 30
C. [1] 2 7 11
D. [1] 3 7 11

Solution

  1. Step 1: Understand element-wise multiplication

    In R, multiplying two vectors multiplies each element of the first vector by the corresponding element of the second vector.
  2. Step 2: Calculate each product

    Multiply elements: 2*1=2, 4*3=12, 6*5=30. So the result is c(2, 12, 30).
  3. Final Answer:

    [1] 2 12 30 -> Option B
  4. Quick Check:

    Element-wise multiplication = [1] 2 12 30 [OK]
Hint: Multiply vectors element by element for correct output [OK]
Common Mistakes:
  • Adding instead of multiplying
  • Concatenating vectors instead of multiplying
  • Getting sums instead of products
4.

Consider this R code snippet:

v1 <- c(1, 2, 3)
v2 <- c(4, 5)
result <- v1 + v2
print(result)

What is the issue with this code?

medium
A. Vectors have different lengths causing recycling warning.
B. Syntax error due to missing operator.
C. Result will be NULL because vectors differ in length.
D. No issue; code runs correctly without warnings.

Solution

  1. Step 1: Check vector lengths

    Vector v1 has length 3, v2 has length 2. They differ in length.
  2. Step 2: Understand recycling in R

    R recycles the shorter vector to match the longer one but gives a warning if lengths are not multiples. Here, 3 is not a multiple of 2, so a warning occurs.
  3. Final Answer:

    Vectors have different lengths causing recycling warning. -> Option A
  4. Quick Check:

    Unequal vector lengths cause recycling warning [OK]
Hint: Vectors must be same length or multiples to avoid warnings [OK]
Common Mistakes:
  • Ignoring recycling warnings
  • Expecting syntax errors for length mismatch
  • Assuming result is NULL when lengths differ
5.

You have two vectors representing daily sales for two stores:
store1 <- c(10, 20, 30, 40)
store2 <- c(5, 15, 25, 35)
How do you calculate the total sales per day for both stores combined using vector arithmetic?

hard
A. total_sales <- store1 + store2
B. total_sales <- store1 * store2
C. total_sales <- store1 - store2
D. total_sales <- c(store1, store2)

Solution

  1. Step 1: Understand the goal

    We want total sales per day, so we add sales from both stores for each day.
  2. Step 2: Use element-wise addition

    Adding store1 and store2 element-wise sums daily sales: c(10+5, 20+15, 30+25, 40+35) = c(15, 35, 55, 75).
  3. Final Answer:

    total_sales <- store1 + store2 -> Option A
  4. Quick Check:

    Add vectors element-wise for daily totals [OK]
Hint: Add vectors to combine daily sales totals [OK]
Common Mistakes:
  • Multiplying instead of adding sales
  • Subtracting sales mistakenly
  • Concatenating vectors instead of adding
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard