我有一个名为mydf的数据帧和一个名为myvec的 vector 。数据帧中的行数小于 vector 的长度。我想通过插入vector元素(如果它不在数据框的行名中)来扩展数据框。

myvec <- c("apple", "banana", "grapes", "oranges")

mydf
rowname   codes    remark
apple     44        bad
grapes    54        good

结果
rowname   codes    remark
  apple     44        bad
  banana
  grapes    54        good
  oranges

最佳答案

rowname实际上是行名吗?如果您不订阅rownameshadley opinion,则可以执行此操作

myvec <- c("apple", "banana", "grapes", "oranges")
dd <- read.table(header = TRUE, stringsAsFactors = FALSE,
text = 'rowname   codes    remark
apple     44        bad
grapes    54        good')

rownames(dd) <- dd$rowname
#        rowname codes remark
# apple    apple    44    bad
# grapes  grapes    54   good



`rownames<-`(dd[myvec, ], myvec)

#           rowname codes remark
#   apple     apple    44    bad
#   banana     <NA>    NA   <NA>
#   grapes   grapes    54   good
#   oranges    <NA>    NA   <NA>

关于r - 如何在数据框中插入新行以使其等于R中给定向量的长度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34859536/

10-12 16:49
查看更多