Объединение двух столбцов в другое - PullRequest
1 голос
/ 15 января 2020

Я пытаюсь объединить имя столбца, чтобы создать еще один. Ниже приведены некоторые данные о том, что я пытаюсь сделать. Спасибо за помощь


Bloc <- c("LE3", "LE5", "LE2", "LE5", "LE6")
Id <- c(69, 66, 71, 72, 76)
df1 <- data.frame(Bloc, Id)


Bloc <- c("LE3", "LE5", "LE2", "LE5", "LE6")
Id <- c(69, 66, 71, 72, 76)
Name <- c("LE3-69", "LE5-66", "LE2-71", "LE5-72", "LE6-76")
df2 <-  data.frame(Bloc, Id, Name)

1 Ответ

1 голос
/ 15 января 2020

Мы можем использовать paste в base R

df1$Name <- paste(df1$Bloc, df1$Id, sep="-")

Если имеется много столбцов, мы также можем сделать

df1$Name <- do.call(paste, c(df1, sep="-"))

Или с unite из tidyr

library(dplyr)
library(tidyr)
df1 %>%
   unite(Name, Bloc, Id, sep="-", remove = FALSE)  %>%
   select(names(df1), Name)
#  Bloc Id   Name
#1  LE3 69 LE3-69
#2  LE5 66 LE5-66
#3  LE2 71 LE2-71
#4  LE5 72 LE5-72
#5  LE6 76 LE6-76
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...