Извлечь первое слово из столбца и вставить в новый столбец

У меня есть датафрейм ниже и я хочу извлечь первое слово и вставить его в новый столбец

Dataframe1:

COL1
Nick K Jones
Dave G Barros
Matt H Smith

Преобразуйте это в это:

Dataframe2:
COL1              COL2
Nick K Jones      Nick
Dave G Barros     Dave
Matt H Smith      Matt

Ответ 1

Вы можете использовать регулярное выражение ("([A-Za-z]+)" или "([[:alpha:]]+)" или "(\\w+)"), чтобы захватить первое слово

Dataframe1$COL2 <- gsub("([A-Za-z]+).*", "\\1", Dataframe1$COL1)

Ответ 2

Мы можем использовать функцию stringr::word:

library(stringr)

Dataframe1$COL2 <- word(Dataframe2$COL1, 1)

Ответ 3

Функция strsplit может быть полезна

Dataframe1$COL2 <- strsplit(Dataframe1$COL1, " ")[[1]][1]

Затем вы можете изменить последнее скобленое число, чтобы выбрать другие части из строки.