私が言っl = list()
てからそうl[[27]] = 100
すると、値を含む26の他のエントリが作成NULL
されます。これを回避する方法はありますか?
たとえば、私が実行した場合:l <- list(); for (i in c(4,7,1)) { l[[i]] <- i^1 }
1から7の範囲のエントリと、割り当てなかったすべてのエントリのNULL値を含むリストが作成されます。これらの偽のエントリを回避するにはどうすればよいですか?
私が言っl = list()
てからそうl[[27]] = 100
すると、値を含む26の他のエントリが作成NULL
されます。これを回避する方法はありますか?
たとえば、私が実行した場合:l <- list(); for (i in c(4,7,1)) { l[[i]] <- i^1 }
1から7の範囲のエントリと、割り当てなかったすべてのエントリのNULL値を含むリストが作成されます。これらの偽のエントリを回避するにはどうすればよいですか?
インデックスに文字値を使用します。
l <- list(); for (i in c(4,7,1)) { l[[as.character(i)]] <- i^1 }
> l
$`4`
[1] 4
$`7`
[1] 7
$`1`
[1] 1
for
私はループを避けて使用しますlapply
:
> x <- c(4, 7, 1)
> setNames(lapply(x, `^`, 1), x)
$`4`
[1] 4
$`7`
[1] 7
$`1`
[1] 1
リストに追加できます:
l <- list(); for (i in c(4,7,1)) { l <- append(l, i^1) }