如何在R中使用单元格引用

时间:2015-04-16 13:16:38

标签: r

我正在尝试在当前单元格中使用公式,并参考R中它上面的单元格。例如:

data$srno = data$srno[offset(-1,0)] + 1

我们可以用R编码吗?

2 个答案:

答案 0 :(得分:2)

对您来说更方便的是使用不同包装中的滞后或移位功能。

以下是应对挑战的一些不同方法:

myvector<-1:26

# base version
1+c(0,myvector[1:length(myvector)-1])

# returns an NA for 1st row
1+Hmisc::Lag(myvector)

1L + data.table::shift(myvector, fill=0)

答案 1 :(得分:0)

问题是顶部单元格上面没有单元格。一种方法是对该单元使用NA:

data$srno <- c(NA,data$srno[-length(data$srno)]+1);

另一种方法是将底部单元格考虑到&#34;环绕&#34;,以便可以在公式中使用它来计算顶部单元格的新值。这是否有意义取决于您的数据/公式,但这里是如何做到的:

data$srno <- data$srno[c(length(data$srno),1:(length(data$srno)-1))]+1;