2017-02-13 3 views
1

мой dataframe выглядетьмассив строки для предложения dataframe панд

Phrase           Sentiment 
[seri, escapad, demonstr, adag, good, goos]   1 
[seri, escapad, demonstr, adag, good, goos]   2 

, когда я использую команду df.dtypes

Phrase  object 
Sentiment  int64 
dtype: object 

я должен получить dataframe как:

Phrase           Sentiment 
seri escapad demonstr adag good goos   1 
seri escapad demonstr adag good bad    2 

Я пробовал этот код

df['Phrase'] = df[df.Phrase.map(lambda x: ','.join(x))] 

, что должно сделать идентификатор

+0

Здравствуйте, вы можете преобразовать список в строку ... Но .. что вы хотите делать с DF? – Ika8

+0

@ Анализ настроений Ika8 –

ответ

2

Почти сразу - у вас есть один дополнительный слой df[. Попробуйте это:

df['Phrase'] = df.Phrase.map(lambda x: ' '.join(x)) 

Вы уже возвращенной столбец, который вы хотите использовать для замены Phrase, но вы пытаетесь индексировать свои значения, которые производили ошибку.

1

Я думаю, вы очень близки. Следующая строка должна сделать трюк:

df['Phrase'] = df['Phrase'].map(lambda x: ' '.join(x)) 
1

Используйте ' 'вместо','

Вы можете сделать это без лямбда, как это:

df['Phrase'] = df.Phrase.apply(', '.join) 

Использование лямбда:

df['Phrase'] = df.Phrase.apply(lambda x: ', '.join(x)) 
Смежные вопросы