问题描述
我有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”完成了这一部分。
数组中的每个元素都有对应的值,例如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','J']
arr1 = ['k','N']
arr2 = ['O','S']
arr3 = ['T','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)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)