相关疑难解决方法(0)

R:在向空数据帧添加行时丢失列名

我刚刚开始使用R并遇到一个奇怪的行为:当在空数据框中插入第一行时,原始列名称会丢失.

例:

a<-data.frame(one = numeric(0), two = numeric(0))
a
#[1] one two
#<0 rows> (or 0-length row.names)
names(a)
#[1] "one" "two"
a<-rbind(a, c(5,6))
a
#  X5 X6
#1  5  6
names(a)
#[1] "X5" "X6"
Run Code Online (Sandbox Code Playgroud)

如您所见,列名12X5X6替换.

有人可以告诉我为什么会这样,并且有没有正确的方法来做到这一点而不会丢失列名?

霰弹枪解决方案是将名称保存在辅助矢量中,然后在完成数据帧处理后将其添加回来.

谢谢

语境:

我创建了一个函数,它收集一些数据并将它们作为新行添加到作为参数接收的数据帧中.我创建数据框,遍历我的数据源,将data.frame传递给每个函数调用以填充其结果.

r names dataframe rbind

62
推荐指数
4
解决办法
3万
查看次数

标签 统计

dataframe ×1

names ×1

r ×1

rbind ×1