2016-04-13 1 views
1

Я пытаюсь извлечь любые слова в строке моего фрейма с использованием str.extract(), но в итоге я получаю только одно слово. Например, в одной из колонок моего dataframe:Найти несколько слов, используя df ['var']. Str.extract() (Python)?

var1 
THIS IS A STRING 

Когда я использую:

df['words'] = df['var1'].str.extract('([A-Z]\w{0,})') 

Выход

var1    words 
THIS IS A STRING THIS 

Как извлечь всю фразу «Это STRING "?

Спасибо!

+0

Ваш dataframe относится к 'var1', но ваш экстракт из' ф.р. [ 'тест'] '. Опечатка? – Alexander

+0

Да, это была опечатка. Спасибо, что указали это. – Jess

ответ

0

IIUC вы можете использовать split произвольным пробельных \s+, а затем applySeries:

print df 
       var1 
0 THIS IS A STRING 

print df.var1.str.split('\s+').apply(pd.Series) 
     0 1 2  3 
0 THIS IS A STRING 
+0

Как это работает? – jezrael