问题
In python pandas, there is a Series/dataframe column of str values to combine into one long string:
df = pd.DataFrame({'text' : pd.Series(['Hello', 'world', '!'], index=['a', 'b', 'c'])})
Goal: 'Hello world !'
Thus far methods such as df['text'].apply(lambda x: ' '.join(x))
are only returning the Series.
What is the best way to get to the goal concatenated string?
回答1:
You can join
a string on the series directly:
In [3]:
' '.join(df['text'])
Out[3]:
'Hello world !'
回答2:
Apart from join
, you could also use pandas string method .str.cat
In [171]: df.text.str.cat(sep=' ')
Out[171]: 'Hello world !'
However, join()
is much faster.
来源:https://stackoverflow.com/questions/41400381/python-pandas-concatenate-a-series-of-strings-into-one-string