я пытаюсь добавить датафрейм в другой фрейм с заголовком - PullRequest
0 голосов
/ 09 января 2019

У меня есть два фрейма данных, которые я хотел бы объединить в указанном ниже выводе. Я ценю, если кто-то может показать мне правильный путь:

а. Dataframe1

Col1     Col2     Col
zbo      123      40
zbo      6547     50
zbo      6589     60

б. Dataframe2

Column  Column
tile    zbo
file    abc
date    01/09/2018

Ожидаемый результат

tile :  zbo
file :  abc
date :  01/09/2018
Col1     Col2     Col
zbo      123      40
zbo      6547     50
zbo      6589     60

1 Ответ

0 голосов
/ 09 января 2019

Мы можем захватить выходные данные второго фрейма данных и paste с первым

v1 <- do.call(paste, c(df2, sep=" : ", collapse="\n"))
cat(paste(v1, paste(trimws(sub("^\\d+", "", capture.output(df1))),
              collapse="\n"), sep="\n"), sep="\n")
#tile : zbo
#file : abc
#date : 01/09/2018
#Col1 Col2 Col
#zbo  123  40
#zbo 6547  50
#zbo 6589  60

Если нам нужен выходной файл data.frame с одним столбцом, удалите обертку cat и используйте read.csv, чтобы прочитать его как data.frame

read.csv(text = paste(v1, paste(trimws(sub("^\\d+", "", capture.output(df1))),
              collapse="\n"), sep="\n"), header = FALSE)
#                 V1
#1        tile : zbo
#2        file : abc
#3 date : 01/09/2018
#4     Col1 Col2 Col
#5      zbo  123  40
#6      zbo 6547  50
#7      zbo 6589  60

Данные

df1 <- structure(list(Col1 = c("zbo", "zbo", "zbo"), Col2 = c(123L, 
 6547L, 6589L), Col = c(40L, 50L, 60L)), class = "data.frame", row.names = c(NA, 
 -3L))

df2 <- structure(list(Column = c("tile", "file", "date"), Column.1 = c("zbo", 
 "abc", "01/09/2018")), class = "data.frame", row.names = c(NA, 
 -3L))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...