Вы можете использовать либо аксессор Pandas str
, либо список со стандартными методами Python str
.Понимание списка обычно более эффективно.Вы должны ограничить разделение до 3, чтобы исключить ненужные операции.
df = pd.DataFrame({'A': ['ab cd ef gh ij', 'kl mn op qr', 'st uv', 'wx yz 123 456']})
df['B'] = df['A'].str.split(n=3).str[:3].str.join(', ')
df['C'] = [', '.join(x.split(maxsplit=3)[:3]) for x in df['A']]
assert df['B'].equals(df['C'])
print(df)
A B C
0 ab cd ef gh ij ab, cd, ef ab, cd, ef
1 kl mn op qr kl, mn, op kl, mn, op
2 st uv st, uv st, uv
3 wx yz 123 456 wx, yz, 123 wx, yz, 123