擅长:python、mysql、java
<p>您的基本算法是“我希望将<code>df['Node']</code>的前10个值设置为<code>ndf</code>的第一个值,将后10个值设置为<code>ndf</code>的下一个值,依此类推”。这在Dask中很难实现,是因为它不知道每个分区中有多少行:您正在从csv读取数据,以X字节表示的行数取决于每个部分中的数据。其他格式可以提供更多信息。。。在</p>
<p>因此,您肯定需要对数据进行两次传递。您可以使用索引来计算除法并进行排序。在我看来,你能做的最简单的事情就是测量除法的长度,然后得到每个除法起点的偏移量:</p>
<pre><code>lengths = df.map_partitions(len).compute()
offsets = np.cumsum(lengths.values)
offsets -= offsets[0]
</code></pre>
<p>现在使用自定义延迟函数来处理部件</p>
^{pr2}$