我正在尝试执行data.head()
以查看dask数据框并出现以下错误:
TypeError: <lambda>() missing 1 required positional argument: 'df'
在使用map_partitions(在下面的代码中显示)执行lambda函数(尝试将列添加到数据框)后,特别会发生此错误。我可以看到这一行将新列添加到dask数据框结构中,但是data.head()失败。
import dask.dataframe as dd
from selectolax.parser import HTMLParser
data['text'] = dd.map_partitions(
lambda df : df.apply(
lambda x : HTMLParser(x['text']).body.text(separator=' '
).replace('\n',' '),axis=1),
meta='str')
data.head()
在我的笔记本中data.head()一直有效,直到执行此行,所以我怀疑执行map_partitions()的行中发生了错误。
答案 0 :(得分:0)
您很可能想要IHttpContextAccessor
,即数据框上的方法而不是您使用的函数。
另外,看起来很像您可以在此处使用简单的data.map_partitions
:
map
(尽管我可能会误解您的代码的作用)