将Pandas中的列转换为一个长字符串(Python 3)

use*_*157 7 python string dataframe python-3.x pandas

如何将pandas列转换为一个长字符串?

例如,转换以下DF:

Keyword
James
Went
To
The
Market
Run Code Online (Sandbox Code Playgroud)

读为

Keyword
James went to the market
Run Code Online (Sandbox Code Playgroud)

有帮助吗?

Jia*_* Li 7

您可以先使用.tolist将列转换为列表,然后使用.join方法将所有单独的单词连接在一起.

print(df)

  Keyword
0   James
1    Went
2      To
3     The
4  Market

' '.join(df['Keyword'].tolist())

# output: 'James Went To The Market'

# or to put them in a dataframe with 1 row 1 column
pd.DataFrame(' '.join(df['Keyword'].tolist()), columns=['Keyword'], index=[0])

                    Keyword
0  James Went To The Market
Run Code Online (Sandbox Code Playgroud)


Ale*_*ley 5

您可以使用str.cat选择的分隔符将字符串连接到列中:

>>> df.Keyword.str.cat(sep=' ')
'James Went To The Market'
Run Code Online (Sandbox Code Playgroud)

然后,您可以将该字符串放回DataFrame或Series中。

注意:如果不需要任何分隔符,则可以简单地使用df.sum()(并且以后不需要构造新的DataFrame)。