回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有十列:n1,n2,n3,n4,n5,n6,n7,n8,n9,n10</p>
<p>单行中的值加起来必须正好是10,并且所有值必须是小于或等于5的非负整数</p>
<p>我想根据我刚才描述的约束条件,制作一个具有各种可能排列的数据帧。顺序事项(即,[5,5,0,0,0,0,0,0,0,0]和[5,0,5,0,0,0,0,0]都应该是单独的行)</p>
<p>以下是我的尝试:</p>
<pre><code>import itertools as it
permutations = [i for i in it.permutations(range(0,6), 10) if sum(i)==10]
df = pd.DataFrame(data=permutations,columns=['x1','x2','x3','x4','x5','x6','x7','x8','x9','x10'])
</code></pre>
<p>问题是<code>df</code>中没有行。数组<code>permutations</code>为空。我不明白这是为什么。如果我用<code>it.combinations_with_replacement</code>替换<code>it.permutations</code>,结果列表的长度是30。为什么<code>it.permutations</code>什么也不返回</p>