1

I'm starting with R and I want to split a column of a table with strsplit but after that I don't know how paste the results on the same table

asd <- data.frame(Full_name= c("Roberto,Melendes","Alfredo, Fuentes", "Ricardo, Lamadrid"))
asd$Full_name <- as.character(asd$Full_name)
class(asd$Full_name)
strsplit(asd$Full_name, ",")

I want this:

          Full_name   First_name    Last_name
1  Roberto,Melendes   Roberto       Melendes
2  Alfredo, Fuentes   Alfredo       Fuentes
3  Ricardo, Lamadrid  Ricardo       Lamadrid
Moises T
  • 59
  • 3

1 Answers1

0

We can use separate from tidyr

library(dplyr)
library(tidyr)
asd %>% 
   separate(Full_name, into = c("First_name", "Last_name"), remove = FALSE)
#          Full_name First_name Last_name
#1  Roberto,Melendes    Roberto  Melendes
#2  Alfredo, Fuentes    Alfredo   Fuentes
#3 Ricardo, Lamadrid    Ricardo  Lamadrid

Or in base R with read.table/read.csv

asd[c("First_name", "Last_name")] <- read.table(text = asd$Full_name,
              sep=",", header = FALSE)
akrun
  • 874,273
  • 37
  • 540
  • 662
  • 1
    Thank you so much! I didn't know the `separate` function. I complemented your code with `sep = "," ` and it works perfect – Moises T Jul 17 '20 at 01:11