# tensorplay.functional.combinations Source: https://www.tensorplay.cn/docs/generated/tensorplay.functional.combinations.html ```python tensorplay.functional.combinations(input: Tensor, r: int = 2, with_replacement: bool = False) → seq ``` Compute combinations of length $r$ of the given tensor. The behavior is similar to python’s itertools.combinations when with_replacement is set to False, and itertools.combinations_with_replacement when with_replacement is set to True. Parameters: - input ([Tensor](/docs/generated/tensorplay.Tensor.html#tensorplay.Tensor)) – 1D vector. - r ([int](https://docs.python.org/3/builtins/functions.html#int), optional) – number of elements to combine - with_replacement ([bool](https://docs.python.org/3/builtins/functions.html#bool), optional) – whether to allow duplication in combination Returns: A tensor equivalent to converting all the input tensors into lists, do itertools.combinations or itertools.combinations_with_replacement on these lists, and finally convert the resulting list into tensor. Return type: [Tensor](/docs/generated/tensorplay.Tensor.html#tensorplay.Tensor) Example: ``` >>> a = [1, 2, 3] >>> list(itertools.combinations(a, r=2)) [(1, 2), (1, 3), (2, 3)] >>> list(itertools.combinations(a, r=3)) [(1, 2, 3)] >>> list(itertools.combinations_with_replacement(a, r=2)) [(1, 1), (1, 2), (1, 3), (2, 2), (2, 3), (3, 3)] >>> tensor_a = tensorplay.tensor(a) >>> tensorplay.combinations(tensor_a) tensor([[1, 2], [1, 3], [2, 3]]) >>> tensorplay.combinations(tensor_a, r=3) tensor([[1, 2, 3]]) >>> tensorplay.combinations(tensor_a, with_replacement=True) tensor([[1, 1], [1, 2], [1, 3], [2, 2], [2, 3], [3, 3]]) ```