How to do df.apply parallelly ?

I have a code segment

data_preprocess_segment_5 = df.apply(lambda x: ' '.join(segment(x)))

which takes a lot of time maybe more than 24hrs to process.
I was thinking to do

df[0:1000].apply(lambda x: ' '.join(segment(x)))
df[1000:2000].apply(lambda x: ' '.join(segment(x)))
df[2000:3000].apply(lambda x: ' '.join(segment(x)))

parallelly and later merge those df

@Abhiram Shibu