使用[[]时下标超出范围

时间:2015-09-17 10:34:33

标签: r

我正在尝试使用以下代码模拟哈希映射,并在if语句中获取超出范围的索引?

我不确定是什么导致这种情况,因为从循环中打印初始空值工作正常。

strings <- c("string1","string2","string3")

test <- NULL

for (i in 1:length(strings)) {
  print(is.null(test[[strings[i]]]))
  }

for (i in 1:length(strings)) {
  if (is.null(test[[strings[i]]])) {
    test[[strings[i]]] <- 1
    }
  }

1 个答案:

答案 0 :(得分:5)

您可以将M初始化为列表来代替a = 1 While Range("A" & a) <> "" 'Range("M" & a) = "=--TEXT(" & Range("H" & a) & ",""00\/00\/0000"")" Range("M" & a) = CDate(Format(Range("H" & a), "00\/00\/0000")) a = a + 1 Wend

test <- NULL

这应该删除错误消息并提供所需的结果:

test