excel中如何在指定一列中随机产生总和为n的一些1或者0?

如题所述

在 Excel 中,可以使用以下步骤在指定一列中随机产生总和为 n 的一些 1 或者 0:
在 Excel 中,选中一个空列,用于存放随机生成的 1 或 0。
在第一行输入 "1",并在下一行输入 "0"。
在第三行输入 "=RAND()",并将其填充到需要生成随机数的所有单元格中。这会在每个单元格中生成一个介于 0 到 1 之间的随机数。
选中随机数所在的所有单元格,点击“数据”选项卡中的“排序”按钮,在弹出的排序对话框中按照随机数列进行升序排序。此时,随机数列中的数值将被重新排列。
对于需要生成 1 的单元格,可以使用以下公式:=IF(SUM($A$1:A1)<=$B$1,1,0),其中,$A$1 是随机数列的第一个单元格,A1 是当前单元格的位置,$B$1 是总和 n 的单元格位置。该公式使用了 IF 函数和 SUM 函数,当当前单元格之前的所有单元格中 1 的数量小于或等于 n 时,该单元格为 1,否则为 0。
将公式填充到所有需要生成 1 或 0 的单元格中,即可得到指定一列中随机产生总和为 n 的一些 1 或者 0。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-03-24
可以使用Excel的Random()函数和IF()函数结合,按以下步骤操作:
1.在Excel中选定一列,在第一行输入Random()函数,然后按下回车键。该函数将返回0到1之间的随机数。
2.用填充手柄将该函数向下填充到该列所有单元格。
3.在另一列中输入IF()函数,以便在满足总和为n的条件下返回1或0。例如,如果要随机选择10个1或0,并且它们的总和必须为5,则在第一行输入以下公式:
=IF(SUM($A$1:A1)<=5,1,0)
其中SUM($A$1:A1)是指从第一个单元格到当前单元格内的所有随机数之和,而<=5是给定的总和限制。请注意绝对引用$A$1以确保单元格引用不会发生变化。
4.用填充手柄将该公式向下填充到该列所有单元格。结果将为1或0,总和将等于5。
请注意,由于随机数的性质,每次执行时都会得到不同的结果,因此需要不断重复执行以上步骤, 直到获得满足特定条件的希望的结果集合。
相似回答