此代码生成一个矩阵,每行1个,这个1可能位于行的相同位置 我希望每行1的位置必须不同,即1不得在列中重叠。
答案 0 :(得分:0)
假设您希望结果矩阵的大小为 df['columnname'] = [''.join(c.split()) for c in df['columnname'].astype(str)]
首先,为每列随机选择[m, n]
1
其次,分配一个大小为idx = randi(m, 1, n);
[m,n]
最后,将相应的条目设置为:
res = zeros(m,n);
res( sub2ind([m,n], idx, 1:n) ) = 1;
矩阵的示例结果:
[3,4]