如何分析 pandas 列中的文本?
How can I analyse a text from a pandas column?
我习惯于对Python中的文本文件进行一些分析。我通常会这样做:
f = open('filename.txt','r')
text = ""
while 1:
line = f.readline()
if not line:break
text += line
f.close()
# tokenize
tokenized_word=word_tokenize(text)
.
.
.
但是,现在我不是在处理文本文件,而是在处理 Pandas 数据框。如何从 Pandas 列中获取 'text' 对象?
我试着看了一下 post
Text mining with Python and pandas,但这并不是我要找的。
您可以遍历行:
for idx, row in df.iterrows():
tokenized_word=word_tokenize(row['text'])
让我们假设这是您的数据名:
import pandas as pd
df = pd.DataFrame({ "Text": ['bla bla bla', 'Hello', 'Other sentence', 'Lets see']})
您可以使用 agg
函数获取代码的同义词:
text = df['Text'].agg(lambda x: ' '.join(x.dropna()))
text
结果:
'bla bla bla Hello Other sentence Lets see'
然后你可以分词:
tokenized_word=word_tokenize(text)
我习惯于对Python中的文本文件进行一些分析。我通常会这样做:
f = open('filename.txt','r')
text = ""
while 1:
line = f.readline()
if not line:break
text += line
f.close()
# tokenize
tokenized_word=word_tokenize(text)
.
.
.
但是,现在我不是在处理文本文件,而是在处理 Pandas 数据框。如何从 Pandas 列中获取 'text' 对象?
我试着看了一下 post Text mining with Python and pandas,但这并不是我要找的。
您可以遍历行:
for idx, row in df.iterrows():
tokenized_word=word_tokenize(row['text'])
让我们假设这是您的数据名:
import pandas as pd
df = pd.DataFrame({ "Text": ['bla bla bla', 'Hello', 'Other sentence', 'Lets see']})
您可以使用 agg
函数获取代码的同义词:
text = df['Text'].agg(lambda x: ' '.join(x.dropna()))
text
结果:
'bla bla bla Hello Other sentence Lets see'
然后你可以分词:
tokenized_word=word_tokenize(text)