【发布时间】:2018-07-06 14:21:32
【问题描述】:
我一直在 pandas 中使用以下正则表达式将某些字符替换为另一个字符:
df = df.replace(r'\t|\r|\n', '', regex=True)
【问题讨论】:
-
您是否尝试过使用
map_partitions? -
@mdurant 那如何支持正则表达式匹配?
我一直在 pandas 中使用以下正则表达式将某些字符替换为另一个字符:
df = df.replace(r'\t|\r|\n', '', regex=True)
【问题讨论】:
map_partitions?
处理诸如此类的逐行操作的最常见方法是使用map_partitions,它允许您处理 dask-dataframe 的每个块,每个块都是真正的 pandas 数据帧。
在这个例子中
df2 = df.map_partitions(lambda d: d.replace(r'\t|\r|\n', '', regex=True))
df 是一个 dask 数据帧。请注意,与 map_partitions 一起使用的函数需要一个 pandas 数据帧并返回一个 pandas 数据帧。
【讨论】:
d) 的输入是 pandas 数据帧,是较大的 dask 数据帧的一部分。