首页 > 解决方案 > R:如何在 Dataframe 中从某一列开始插入一行?

问题描述

我有以下数据框:

df <- tibble(x = 1:3, y = 3:1, z = 4:6, a = 6:4, b = 7:9)

我现在需要使用以下命令从第二行第三到第五列中提取值:

newrow <- df[2,3:5]

我现在想在第二行之后插入一个新行。问题是我需要新行从第 2 列开始。如果我使用以下代码,该行将添加到与我从中提取它的列位置相同的列位置:

df%>% add_row(newrow, .before = 3)

希望任何人都可以提供帮助,非常感谢任何帮助。

标签: rdataframerowextract

解决方案


您的newrow数据框具有来自列 3:5 (z,a,b) 的列名。因此add_row()将新行与这些列相匹配。

您需要用前三个列名重命名 newrow 的列。

df%>% add_row(setNames(newrow, names(df)[1:ncol(newrow)]),
              .before = 3)

推荐阅读