Bird
Raised Fist0
R Programmingprogramming~5 mins

nchar and substring in R Programming - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the nchar() function do in R?
It returns the number of characters in a string, including spaces and special characters.
Click to reveal answer
beginner
How do you extract a part of a string in R?
You use the substring() function, specifying the start and end positions of the part you want.
Click to reveal answer
beginner
Example: What is the output of nchar("Hello World")?
The output is 11 because there are 11 characters including the space.
Click to reveal answer
beginner
Example: What does substring("Programming", 2, 5) return?
It returns "rogr", which are characters from position 2 to 5.
Click to reveal answer
intermediate
Can substring() extract from the middle to the end of a string without specifying the end?
Yes, if you omit the end position, it extracts from the start position to the end of the string.
Click to reveal answer
What does nchar("R is fun") return?
A7
B8
C9
D6
What is the result of substring("Data", 2, 3)?
A"at"
B"Da"
C"ta"
D"a"
If you want to get the last 3 characters of a string "Example", which is the correct call?
Asubstring("Example", 6, 8)
Bsubstring("Example", 4, 7)
Csubstring("Example", 5, 7)
Dsubstring("Example", 5)
What happens if substring() start position is greater than string length?
AReturns empty string
BReturns whole string
CReturns error
DReturns NULL
Which function would you use to find how many characters are in a string?
Asubstring()
Bstr_length()
Clength()
Dnchar()
Explain how to use nchar() and substring() to find the length of a string and extract a part of it.
Think about counting letters and cutting out a piece of a word.
You got /3 concepts.
    Describe what happens if you use substring() with only a start position and no end position.
    Imagine cutting a string from a point to the end.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the nchar function do in R?
      easy
      A. Returns the number of characters in a string
      B. Extracts a substring from a string
      C. Converts a string to uppercase
      D. Counts the number of words in a string

      Solution

      1. Step 1: Understand the purpose of nchar

        The nchar function counts how many characters are in a string, including spaces and punctuation.
      2. Step 2: Compare with other options

        Other options describe different functions: substring extracts parts, toupper converts case, and word count is not done by nchar.
      3. Final Answer:

        Returns the number of characters in a string -> Option A
      4. Quick Check:

        nchar("hello") = 5 [OK]
      Hint: Remember: nchar counts characters, substring extracts parts [OK]
      Common Mistakes:
      • Confusing nchar with substring
      • Thinking nchar counts words
      • Assuming nchar changes the string
      2. Which of the following is the correct way to extract the substring "cat" from the string "concatenate" in R?
      easy
      A. substring("concatenate", 3, 5)
      B. substring("concatenate", 4, 6)
      C. substring("concatenate", 5, 7)
      D. substring("concatenate", 2, 4)

      Solution

      1. Step 1: Identify the position of "cat" in "concatenate"

        "concatenate" is c(1)o(2)n(3)c(4)a(5)t(6)e(7)n(8)a(9)t(10)e(11). The substring "cat" starts at position 4 and ends at 6.
      2. Step 2: Use substring with correct start and end

        Using substring("concatenate", 4, 6) extracts characters 4 to 6, which is "cat".
      3. Final Answer:

        substring("concatenate", 4, 6) -> Option B
      4. Quick Check:

        substring("concatenate", 4, 6) = "cat" [OK]
      Hint: Count characters starting at 1 to find substring positions [OK]
      Common Mistakes:
      • Starting count at 0 instead of 1
      • Mixing up start and end positions
      • Using incorrect substring indices
      3. What will be the output of this R code?
      text <- "Programming"
      len <- nchar(text)
      sub <- substring(text, 4, 7)
      print(len)
      print(sub)
      medium
      A. 11 and "gram"
      B. 11 and "gramm"
      C. 10 and "gram"
      D. 10 and "gramm"

      Solution

      1. Step 1: Calculate length of "Programming" using nchar

        "Programming" has 11 characters: P(1) r(2) o(3) g(4) r(5) a(6) m(7) m(8) i(9) n(10) g(11). So, len = 11.
      2. Step 2: Extract substring from position 4 to 7

        Characters 4 to 7 are g(4) r(5) a(6) m(7), so substring is "gram".
      3. Final Answer:

        11 and "gram" -> Option A
      4. Quick Check:

        nchar("Programming") = 11, substring(4,7) = "gram" [OK]
      Hint: Count characters carefully; substring includes both start and end [OK]
      Common Mistakes:
      • Counting length as 10 instead of 11
      • Extracting one extra character in substring
      • Confusing substring end position as exclusive
      4. The following code is intended to extract "data" from the string "database" but it gives wrong output. What is the error?
      text <- "database"
      result <- substring(text, 1, 3)
      print(result)
      medium
      A. The string variable is misspelled
      B. substring function syntax is wrong
      C. nchar should be used instead of substring
      D. Start and end positions are incorrect; should be 1 to 4

      Solution

      1. Step 1: Check the substring positions used

        substring(text, 1, 3) extracts characters 1 to 3: "dat" from "database".
      2. Step 2: Identify correct positions for "data"

        "data" is characters 1 to 4, so end position should be 4, not 3.
      3. Final Answer:

        Start and end positions are incorrect; should be 1 to 4 -> Option D
      4. Quick Check:

        substring("database", 1, 4) = "data" [OK]
      Hint: Remember substring end position is inclusive [OK]
      Common Mistakes:
      • Using end position one less than needed
      • Confusing substring with nchar usage
      • Assuming substring excludes end position
      5. You have a vector of strings: words <- c("apple", "banana", "cherry"). Write R code using substring and nchar to create a new vector containing the last 3 characters of each word. Which code snippet does this correctly?
      hard
      A. substring(words, nchar(words), nchar(words)+2)
      B. substring(words, 1, 3)
      C. substring(words, nchar(words)-2, nchar(words))
      D. substring(words, nchar(words)-3, nchar(words)-1)

      Solution

      1. Step 1: Understand how to get last 3 characters

        For each word, last 3 characters start at position (length - 2) and end at length. Use nchar(words) to get length.
      2. Step 2: Use substring with vectorized start and end

        substring(words, nchar(words)-2, nchar(words)) extracts last 3 characters for each word correctly.
      3. Step 3: Check other options

        substring(words, 1, 3) extracts first 3 characters, C uses invalid end position, D extracts wrong positions.
      4. Final Answer:

        substring(words, nchar(words)-2, nchar(words)) -> Option C
      5. Quick Check:

        Last 3 chars of "banana" = "ana" [OK]
      Hint: Use nchar(word)-2 as start for last 3 chars [OK]
      Common Mistakes:
      • Using fixed start positions instead of dynamic
      • Off-by-one errors in start or end positions
      • Assuming substring end is exclusive
      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