Arrays 在Python中对组合的数字列表求和
我有4个阵列,如下所示:-Arrays 在Python中对组合的数字列表求和,arrays,python-3.x,list,combinatorics,Arrays,Python 3.x,List,Combinatorics,我有4个阵列,如下所示:- arr1 = ['A', 'B','C','D','E','F','G','H','I','J'] arr2 = ['k','l','M','N'] arr3 = ['O','P','Q','R','S'] arr4 = ['T','U','V','W','X','Y','Z','AA','AB'] 我正在解决一个组合问题,我需要从数组1中选择5,从数组2中选择1,从数组3中选择2,从数组4中选择3,这样最终的组合中就有11个元素。我已经用“Itertools”完成
arr1 = ['A', 'B','C','D','E','F','G','H','I','J']
arr2 = ['k','l','M','N']
arr3 = ['O','P','Q','R','S']
arr4 = ['T','U','V','W','X','Y','Z','AA','AB']
我正在解决一个组合问题,我需要从数组1中选择5,从数组2中选择1,从数组3中选择2,从数组4中选择3,这样最终的组合中就有11个元素。我已经用“Itertools”完成了这部分
数组中的每个元素都有相应的值,例如a=1、B=2、AB=28。
我的下一个挑战是为拾取的元素拾取所有对应的11个值,并将它们相加,最后导出为csv
CSV文件中的预期输出为:-
第1行-ABCDEFGHIJK-66
**66等于1到11的和。这里的重点是数字1到11可以是我应该使用的输入文件的任何基础
这就是我一直在思考如何进行所有对应值求和的第二步。
以下是我用于创建组合的代码:-
import itertools
from itertools import combinations
import pandas as pd
def rSubset(arr, r):
return list(combinations(arr, r))
# Driver Function
if __name__ == "__main__":
arr = ['A', 'B','C','D','E','F','G','H','I','J']
arr1 = ['k','l','M','N']
arr2 = ['O','P','Q','R','S']
arr3 = ['T','U','V','W','X','Y','Z','AA','AB']
r = 5
s = 1
t = 2
u = 3
BaList = rSubset(arr, r)
KList = rSubset(arr1, s)
AList = rSubset(arr2, t)
BoList = rSubset(arr3, u)
inputdata = [
BaList,
KList,
AList,
BoList,
]
result = list(itertools.product(*inputdata))
df = pd.DataFrame(zip(result), columns=['column'])
df.to_csv("C:\\Users\\013830\\Desktop\\PCM.csv", index=False)