如何创建一个空的R向量以添加新项

111 投票
7 回答
303010 浏览
提问于 2025-04-16 02:22

我想在Python中使用R语言,这可以通过一个叫Rpy2的模块来实现。我注意到R语言有很方便的[]操作,可以用来提取特定的列或行。那么,我该如何用Python脚本实现这样的功能呢?

我的想法是创建一个R向量,把我想要的元素添加到这个向量里,这样最终的向量就和R中的一样。我创建了一个seq(),但是它似乎总是从数字1开始,所以最后的结果总是以1开头,这不是我想要的。那么,有没有更好的方法呢?

7 个回答

28

你可以这样创建一个空的向量

vec <- numeric(0)

然后可以使用 c() 来添加元素

vec <- c(vec, 1:5)

不过正如 romunov 所说,提前分配一个向量再填充元素要好得多(这样每次添加元素时就不用重新分配一个新的向量副本)

70

我先创建了一个向量,代码是:

> (a <- rep(NA, 10))
 [1] NA NA NA NA NA NA NA NA NA NA

然后你可以用 [] 来往里面添加值。

104
vec <- vector()
?vector

另请查看向量的帮助信息

撰写回答