Bird
Raised Fist0
Apache Sparkdata~5 mins

String functions in Spark in Apache Spark - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the Spark function lower() do to a string column?
It converts all characters in the string column to lowercase letters.
Click to reveal answer
beginner
How does the concat() function work in Spark?
It joins two or more string columns or literals into one single string column.
Click to reveal answer
beginner
What is the purpose of the substring() function in Spark?
It extracts a part of a string from a specified start position for a given length.
Click to reveal answer
beginner
Explain what trim() does in Spark string functions.
It removes leading and trailing spaces from the string values in a column.
Click to reveal answer
intermediate
What does the regexp_replace() function do in Spark?
It replaces all substrings that match a regular expression pattern with a specified replacement string.
Click to reveal answer
Which Spark string function converts all letters in a column to uppercase?
Alower()
Bsubstring()
Ctrim()
Dupper()
What does the concat() function do in Spark?
AJoins multiple strings into one
BExtracts a substring
CRemoves spaces
DSplits a string into parts
Which function removes spaces at the start and end of a string in Spark?
Artrim()
Bltrim()
Ctrim()
Dsubstring()
How do you extract a part of a string starting at position 3 with length 4 in Spark?
Asubstr(column, 3, 4)
Bsubstr(column, 4, 3)
Csubstring(column, 4, 3)
Dsubstring(column, 3, 4)
What does regexp_replace() do in Spark?
AFinds a substring
BReplaces substrings matching a pattern
CSplits strings by pattern
DCounts pattern matches
Describe how you would clean a string column in Spark to remove extra spaces and convert all text to lowercase.
Think about removing spaces and changing case.
You got /4 concepts.
    Explain how to combine two string columns into one in Spark and then extract a part of the combined string.
    First join strings, then get a substring.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which Spark string function converts all characters in a column to lowercase?
      easy
      A. substring()
      B. upper()
      C. trim()
      D. lower()

      Solution

      1. Step 1: Understand the function purpose

        The lower() function changes all letters in a string to lowercase.
      2. Step 2: Compare with other functions

        upper() makes letters uppercase, trim() removes spaces, and substring() extracts part of the string.
      3. Final Answer:

        lower() -> Option D
      4. Quick Check:

        Lowercase conversion = lower() [OK]
      Hint: Lowercase text? Use lower() function [OK]
      Common Mistakes:
      • Confusing lower() with upper()
      • Using trim() to change case
      • Thinking substring() changes case
      2. Which of the following is the correct syntax to remove leading and trailing spaces from a Spark DataFrame column named name?
      easy
      A. df.select(trim(col('name')))
      B. df.select(trim(name))
      C. df.select(trim())
      D. df.select(trim('df.name'))

      Solution

      1. Step 1: Understand Spark column referencing

        In Spark, to refer to a column by name in functions, use col('columnName').
      2. Step 2: Apply trim function correctly

        The trim() function expects a Column object, so trim(col('name')) is correct syntax.
      3. Final Answer:

        df.select(trim(col('name'))) -> Option A
      4. Quick Check:

        Use col() inside trim() for column reference [OK]
      Hint: Use col('colName') inside string functions [OK]
      Common Mistakes:
      • Passing string directly without col()
      • Using variable name without quotes or col()
      • Using trim() without any argument
      3. What will be the output of this Spark code snippet?
      from pyspark.sql.functions import substring
      df = spark.createDataFrame([('SparkData',)], ['word'])
      df.select(substring('word', 1, 5).alias('sub')).collect()
      medium
      A. [Row(sub='parkD')]
      B. [Row(sub='SparkD')]
      C. [Row(sub='Spark')]
      D. [Row(sub='SparkData')]

      Solution

      1. Step 1: Understand substring parameters

        substring('word', 1, 5) extracts 5 characters starting at position 1 (1-based index).
      2. Step 2: Extract substring from 'SparkData'

        Characters 1 to 5 are 'S', 'p', 'a', 'r', 'k' forming 'Spark'.
      3. Final Answer:

        [Row(sub='Spark')] -> Option C
      4. Quick Check:

        substring start=1, length=5 extracts 'Spark' [OK]
      Hint: substring uses 1-based start index [OK]
      Common Mistakes:
      • Assuming 0-based index for substring
      • Extracting wrong number of characters
      • Confusing substring with slice
      4. Identify the error in this Spark code that tries to replace all spaces with underscores in column text:
      from pyspark.sql.functions import regexp_replace
      df.select(regexp_replace(text, ' ', '_')).show()
      medium
      A. Incorrect number of arguments to regexp_replace
      B. Missing column reference using col()
      C. Wrong function name, should be replace()
      D. Using show() instead of collect()

      Solution

      1. Step 1: Check argument types for regexp_replace

        The first argument must be a Column object, not a bare identifier.
      2. Step 2: Correct usage with col()

        Use regexp_replace(col('text'), ' ', '_') to refer to the column properly.
      3. Final Answer:

        Missing column reference using col() -> Option B
      4. Quick Check:

        Use col() to reference columns in functions [OK]
      Hint: Always wrap column names with col() in functions [OK]
      Common Mistakes:
      • Passing column name as string without col()
      • Confusing regexp_replace with replace
      • Ignoring function argument requirements
      5. You want to create a new column clean_name in a Spark DataFrame by trimming spaces, converting to lowercase, and replacing all digits with empty strings from column name. Which code snippet correctly does this?
      hard
      A. df.withColumn('clean_name', regexp_replace(lower(trim(col('name'))), '\\d', ''))
      B. df.withColumn('clean_name', lower(trim(regexp_replace(col(name), '\\d', ''))))
      C. df.withColumn('clean_name', trim(lower(regexp_replace(col(name), '\\d', ''))))
      D. df.withColumn('clean_name', trim(regexp_replace(lower(col(name)), '\\d', '')))

      Solution

      1. Step 1: Order of operations matters

        First trim spaces, then convert to lowercase, then remove digits.
      2. Step 2: Check each option's function nesting

        df.withColumn('clean_name', regexp_replace(lower(trim(col('name'))), '\\d', '')) trims first, then lowers, then replaces digits last, matching the required order.
      3. Final Answer:

        df.withColumn('clean_name', regexp_replace(lower(trim(col('name'))), '\\d', '')) -> Option A
      4. Quick Check:

        Trim -> Lower -> Replace digits = df.withColumn('clean_name', regexp_replace(lower(trim(col('name'))), '\\d', '')) [OK]
      Hint: Chain trim(), lower(), then regexp_replace() in that order [OK]
      Common Mistakes:
      • Wrong order of function calls
      • Missing col() around column name
      • Incorrect regex pattern for digits
      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