gpt4 book ai didi

python-2.7 - 使用 Pandas 和 NLTK 在 Python 2.7 中编码/解码数据

转载 作者:行者123 更新时间:2023-12-03 21:26:00 26 4
gpt4 key购买 nike

我有一个 Pandas Dataframe,其中一列是德语文本,我想对其进行分析。但是我在编码/解码文本时遇到了一些麻烦。我总是得到错误的输出。

我的脚本以这段代码开头:

#!/usr/bin/env python2
# -*- coding: utf-8 -*-

这就是我读取文件的方式(在我读取它之前,它是用 utf-8-sig 保存的(我不知道是否有必要知道):

df = pd.read_csv(r'C:/Users/User/Documents/Reviews.CSV')

输出看起来像这样:

print df['REVIEW']

0 Wer einen großen, schicken Raum mag. Wer gern la...
1 Die L'Osteria residiert in einem alten Kino in...
2 Die Inneneinrichtung ist eine Erwähnung wert, ...

到目前为止它有效。但是一旦我想用下面的代码标记文本,我就会得到一个“困惑”的输出:

tokenizer = RegexpTokenizer(r'\w+')
df['token'] = df['REVIEW'].apply(lambda x: tokenizer.tokenize(x))

输出:

print df['token']
0 [wer, einen, gro�, en, schicken, raum, mag wer,...
1 [die, losteria, residiert, in, einem, alten, k...
2 [die, inneneinrichtung, ist, eine, erw�, hnung...

我已经尝试解码它了:

df['token'].str.decode('utf-8')

我试着把这个放在脚本中:

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

但我仍然得到相同的输出

我想得到这个输出:

0       [wer, einen, großen, schicken, raum, mag, Wer, gern, la...
1 [die, l'Osteria, residiert, in, einem, alten, kino, in...
2 [die, inneneinrichtung, ist, eine, erwähnung, wert, ...

以防万一,有人可以帮助我,这是一个示例 df:

import pandas as pd
df = pd.DataFrame( ['Ich bin ein Text, der sich nicht ändert','Wir zeigen größe','Manchmal brauchen wir mehr Übung.'])
df.columns =['REVIEW']

最佳答案

NLTK tokenizers need Unicode as input , 并且 Unicode 在 Python2.7 中不是默认的。你可以使用

df['REVIEW'].str.decode('utf8').apply(lambda x: tokenizer.tokenize(x))

关于python-2.7 - 使用 Pandas 和 NLTK 在 Python 2.7 中编码/解码数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49845994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com