首页 > 解决方案 > R问题 - 为数据框中的变量生成数字序列

问题描述

我有一个长 298 个观测值的数据框。其中一个变量是完全空白的。它与sample_ids 有关。我知道每一行都是一个观察结果。在这种情况下,让数字按顺序上升是完全可以的。本质上,我需要变量来计算 1:298。

我试过这个 seq 函数,但它不起作用:

geology_data$SampleID <- seq(from = 1, to = 298, by = 1)

我还在 StackOverflow 上找到了类似的帖子,建议使用 rep 函数更像这样:

geology_data$SampleID <- rep(1:ceiling(nrow(geology_data$SampleID)))

但是这个给了我一个错误:

天花板错误(nrow(geology_data$SampleID)):数学函数的非数字参数

当我尝试简化它时,我得到一个不同的错误:

geology_data$SampleID <- rep(1:nrow(geology_data$SampleID))

1:nrow(geology_data$SampleID) 中的错误:长度为 0 的参数

标签: r

解决方案


您的最后一个选项不起作用,因为 geology_data$SampleID 是向量而不是数据框。

尝试任一

geology_data$SampleID <- seq(1, length(geology_data$SampleID))

或者

geology_data$SampleID <- seq(1, nrow(geology_data))

推荐阅读