【发布时间】:2021-11-09 07:11:13
【问题描述】:
我在 Python 中完成了所有这些工作,但我要离开公司,我想留下一个流程,让技术水平比我还低的人来管理。
我已经编写了有关如何在 Excel 中使用 Power Query(获取和转换数据)合并数百个 Excel 工作表的说明。然后我让它们“关闭并加载”到 Excel 工作表中……数据由大约 9000 行和 >20 列组成。一列,称为“姓名”,= 同事姓名(大约有 20 个唯一姓名)。
现在我需要随机获取每个同事行的 10%。 (在 Python 中,我使用了 groupby 和示例,here。)我可以在 Excel 工作表中通过添加一个名为“Rand No”的“帮助行”来执行此操作,其中包含公式 =RAND(),然后使用此数组公式(控制+Shift+Enter):=IF([@[Rand No]]>=LARGE((--([@Name]=[Name])*[Rand No]),COUNTIF([Name],[@Name])/10),"Randomised","")。
但我只是想知道如何在 PowerQuery 中进行这种随机化,因为当我们合并所有这些工作表时,我们已经打开了 PQ 编辑器。我猜它会比使用普通 Excel 公式更复杂——但我错了吗?
【问题讨论】:
-
你试过什么?我认为
Group by Name=>add a column with random numbers to each subgroup=>sort by that column=>Select the first 10% of the rows应该这样做。
标签: excel random powerquery