R объединяет символы первых двух строк кадра данных - PullRequest
1 голос
/ 23 января 2020

У меня есть фрейм данных:

dnames <- data.frame(x1= c("a","b"),x2= c("c","d"),x3= c("e", "f"))
dnames

Я хотел бы объединить символы каждой из первых двух строк фрейма данных

dnames1 <- c("ab","cd","ed")
dnames1

Я пытался:

dnames1 <- paste(dnames[1,],dnames[2,],sep="")
dnames1

Но это не дало правильного результата. Спасибо за вашу помощь.

Ответы [ 2 ]

3 голосов
/ 23 января 2020

Для столбцов paste, используйте sapply

sapply(dnames, paste, collapse="")

Или используя метод OP, unlist и paste

paste(unlist(dnames[1,]),unlist(dnames[2,]),sep="")

In tidyverse

library(dplyr)
library(stringr)
dnames %>%
   summarise_all(str_c, collapse='')
2 голосов
/ 23 января 2020

Чтобы сохранить ваш стиль кода, вы можете попробовать следующий код

d <- t(dnames)
dnames1 <- paste0(d[,1],d[,2])

такой, что

> dnames1
[1] "ab" "cd" "ef"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...