从 'n' 列表中找到 select 'n' 元素的所有可能方法
Finding all possible ways to select 'n' elements from 'n' lists
我想在 R 中找到计算效率最高的方法来获得从 'n' 个单独列表中获取 'n' 值的所有可能方法,其中每个列表可能有 1 个或多个元素。我将举例说明。
假设我有一个列表列表(在我的示例中,具体来说是一个包含四个列表的列表):
ll <- list(list(1), list(2), list(1,3), list(2,4))
我想获得所有方法,以便从这个列表列表的四个列表中的每一个列表中抽取一个值。在这种情况下,可能的值集是:
c(1, 2, 1, 2)
c(1, 2, 1, 4)
c(1, 2, 3, 2)
c(1, 2, 3, 4)
值集可以作为列表列表、矩阵、数据框等形式返回。我只想获取可以从 'n' 列表中获取的每组可能的 'n' 值,每个列表中的一个值。我认为我必须使用某种 for 循环来执行此操作,但欢迎提出任何建议。谢谢。
您可以尝试以下操作
expand.grid(ll)
# Var1 Var2 Var3 Var4
# 1 1 2 1 2
# 2 1 2 3 2
# 3 1 2 1 4
# 4 1 2 3 4
我想在 R 中找到计算效率最高的方法来获得从 'n' 个单独列表中获取 'n' 值的所有可能方法,其中每个列表可能有 1 个或多个元素。我将举例说明。
假设我有一个列表列表(在我的示例中,具体来说是一个包含四个列表的列表):
ll <- list(list(1), list(2), list(1,3), list(2,4))
我想获得所有方法,以便从这个列表列表的四个列表中的每一个列表中抽取一个值。在这种情况下,可能的值集是:
c(1, 2, 1, 2)
c(1, 2, 1, 4)
c(1, 2, 3, 2)
c(1, 2, 3, 4)
值集可以作为列表列表、矩阵、数据框等形式返回。我只想获取可以从 'n' 列表中获取的每组可能的 'n' 值,每个列表中的一个值。我认为我必须使用某种 for 循环来执行此操作,但欢迎提出任何建议。谢谢。
您可以尝试以下操作
expand.grid(ll)
# Var1 Var2 Var3 Var4
# 1 1 2 1 2
# 2 1 2 3 2
# 3 1 2 1 4
# 4 1 2 3 4