问题描述
我正在GCP上使用Dataprep来处理一个有十亿行的大文件。我想限制流输出中的行数,因为我正在制作机器学习模型的原型。
比方说,我想保留原始的十亿行中的一百万行。使用Dataprep可以做到这一点吗?我已经查看了采样文档,但这仅适用于Transformer工具的输入,不适用于过程的结果。
解决方法
您可以这样做,但是在食谱中确实需要做一些额外的工作-使用RANDBETWEEN之类的新列在新列中设置公式,可以为您提供1到1,000之间的随机整数输出(在这个百万到十亿的案例中)。从那里,您可以根据要保留的1到1,000之间的任意整数对行进行过滤,然后输出将只包含随机子集。只需将食谱的最后一部分删除此临时列即可。
,所以确实有两种方法。
正如Courtney Grimes所说,您可以使用2个函数之一来创建超出范围的随机数。
- randbetween :
- rand :
这些方法可用于切片数据的“偶数”部分。如建议的那样, randbetween(1,1000),然后选择1 或者,如果您只想在输出中具有一百万条记录,但是两者之一 您可以仅使用以下3种行过滤方法中的2种:(顶部行\范围) P.S
通过了解$ sourcerownumber 元数据参数(可以阅读产品内的文档),您可以一步一步(又称为第一种情况)过滤\保留部分数据(根据第一种情况),而无需创建其他列 顺便说一句,在Trifacta中“发现”操作方法的一种简便方法是,在“搜索-讨论”窗格(通过ctrl-k访问)中键入您要查找的内容。通过搜索“过滤器”,您将获得有关问题的大多数相关选项。
干杯!