res_log <- lapply(res, log2)
res
は でありlist
、各要素はMATRIX
です。エラーが発生します。
Error in match.fun(FUN) : '1' is not a function, character or symbol
リスト内の行列のすべての値の 2 を底とする対数を計算する場合はres
、次のコマンドを使用できます。
lapply(res, log2)
apply(res, 1, log2)
リストには行がないため、コマンドは機能しません。これは、単一の行列オブジェクト (または配列) でのみ使用できます。
例:
res <- rep(list(matrix(1:9, 3)), 2)
# [[1]]
# [,1] [,2] [,3]
# [1,] 1 4 7
# [2,] 2 5 8
# [3,] 3 6 9
#
# [[2]]
# [,1] [,2] [,3]
# [1,] 1 4 7
# [2,] 2 5 8
# [3,] 3 6 9
lapply(res, log2)
# [[1]]
# [,1] [,2] [,3]
# [1,] 0.000000 2.000000 2.807355
# [2,] 1.000000 2.321928 3.000000
# [3,] 1.584963 2.584963 3.169925
#
# [[2]]
# [,1] [,2] [,3]
# [1,] 0.000000 2.000000 2.807355
# [2,] 1.000000 2.321928 3.000000
# [3,] 1.584963 2.584963 3.169925