Python Pandas объединяет ряд строк в одну строку

Вопрос:

В python pandas существует столбец Series/dataframe из значений str для объединения в одну длинную строку:

df = pd.DataFrame({'text' : pd.Series(['Hello', 'world', '!'], index=['a', 'b', 'c'])})

Цель: “Привет, мир!”

До сих пор методы, такие как df['text'].apply(lambda x: ' '.join(x)), возвращали только Серию.

Каков наилучший способ добраться до конкатенированной строки цели?

Лучший ответ:

Вы можете join строку в строке непосредственно:

In [3]:
' '.join(df['text'])

Out[3]:
'Hello world !'

Ответ №1

Помимо join, вы также можете использовать метод pandas string .str.cat

In [171]: df.text.str.cat(sep=' ')
Out[171]: 'Hello world !'

Однако join() выполняется намного быстрее.

Оцените статью
TechArks.Ru
Добавить комментарий