Split DataFrame Variable into Multiple Columns in R

19 Nov, 2021
In this article, we will discuss how to split dataframe variables into multiple columns using R programming language.
The strsplit() method in R is used to split the specified column string vector into corresponding parts. The pattern is used to divide the string into subparts. 
Syntax:
strsplit(str, pattern)
Parameter :
str: The string vector to be split.
pattern: Pattern to split up the string by.
The do.call() method is used to call a function from within a method name. The rbind() method can then be used to combine the columns obtained as vectors as a result of the application of strsplit method. 
Syntax:
do.call(what, args)
Parameter: 
what – The function to execute
args – Additional arguments to execute.
Example: Split Dataframe variable into multiple columns
R
# creating a dataframedata_frame <- data.frame(                         col1 = c("val_1","val_2","val_3","val_4")                         )print("Original DataFrame")print(data_frame) # splitting values in columnprint("Modified DataFrame") # splitting the values of col1 using underscore characterdata.frame(do.call("rbind", strsplit(as.character(data_frame$col1), "_",                                     fixed = TRUE)))
Output:
[1] "Original DataFrame"
  col1
1 val_1
2 val_2
3 val_3
4 val_4
[1] "Modified DataFrame"
  X1 X2
1 val  1
2 val  2
3 val  3
4 val  4
The tidyr package in R is used to mutate and visualize the data. It is used to tidy up the data. The package can be downloaded and installed into the working space using the following command:
install.packages("tidyr")
The separate method in R can be used to split up the specified string column or vector into corresponding sub-parts. The length of the second argument vector is equivalent to the number of pieces to split up the data into. 
Syntax:
separate(str, n, pattern)
Parameter:
str: The string vector to be split.
n: The names of pieces to split the string into.
pattern: Pattern to split up the string by.
Example: Split dataframe variable into multiple columns 
R
library("tidyr") # creating a dataframedata_frame <- data.frame(                         col1 = c("val_1","val_2","val_3","val_4")                         ) print("Original DataFrame")print(data_frame) # splitting values in columnprint("Modified DataFrame") data_frame %>%  separate(col1, c("col1", "col2"), "_")
Output:
[1] "Original DataFrame"
  col1
1 val_1
2 val_2
3 val_3
4 val_4
[1] "Modified DataFrame"
 col1 col2
1  val    1
2  val    2
3  val    3
4  val    4
The stringr package in R is used to carry out string manipulations. It helps us perform modifications related to string. The package can be download and installed into the working space using the following command : 
install.packages("stringr")
The str_split_fixed method in stringr package is used to split up a string into a fixed number of pieces. The method transforms strings into the specified number of substrings. The specified pattern should be of unit length. 
Syntax:
str_split_fixed(str, pattern , n
Parameter : 
str: The string vector to be split.
pattern: Pattern to split up the string by.
n: The number of pieces to split the string into.
Example: Split dataframe variable into multiple columns
R
library("stringr") # creating a dataframedata_frame <- data.frame(                         col1 = c("val_1","val_2","val_3","val_4")                         )print("Original DataFrame")print(data_frame) # splitting values in columnprint("Modified DataFrame")str_split_fixed(data_frame$col1, "_", 2)
Output:
[1] "Original DataFrame"
  col1
1 val_1
2 val_2
3 val_3
4 val_4
[1] "Modified DataFrame"
    [,1]  [,2]
[1,] "val" "1"
[2,] "val" "2"
[3,] "val" "3"
[4,] "val" "4"
surindertarika1234
Picked
R DataFrame-Programs
R-DataFrame
R Language
R Programs
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Change Color of Bars in Barchart using ggplot2 in R
How to Split Column Into Multiple Columns in R DataFrame?
Group by function in R using Dplyr
How to Change Axis Scales in R Plots?
How to filter R DataFrame by values in a column?
How to Split Column Into Multiple Columns in R DataFrame?
How to filter R DataFrame by values in a column?
Replace Specific Characters in String in R
Merge DataFrames by Column Names in R
How to Sort a DataFrame in R ?