我有一个包含 10M 记录的数据集,其中第一步是清理数据并使数据集中的单词长度小于 400(如果有)。可以在不使用 numba /dask 或其他多处理库的情况下以原始形式更快地完成吗?
from cleantext import clean
def func_vect(val):
temp=clean(val,no_line_breaks=True,no_urls=True,no_emails=True,lower=True).split()
if len(temp)<=400:
return " ".join(u for u in temp if len(u)<=15)
else:
return " ".join(u for u in temp[:175]+temp[-175:] if len(u)<=15)
ufunc_vec=np.vectorize(func_vect,otypes=[str])
答案 0 :(得分:-1)
这可能有效:
df['truncated_string'] = df['string'].str[:400]