Я столкнулся с этой ошибкой атрибута, и я застрял в том, как обрабатывать значения float, если они появляются в чириканье. Потоковое твит должно быть одинарным и обозначенным поэтому я использовал функцию split.AttributeError: объект 'float' не имеет атрибута 'lower'
Может кто-нибудь, пожалуйста, помогите мне разобраться с ним, любым обходным решением или решением ..?
Вот ошибка который м .... получаешь
AttributeError Traceback (most recent call last)
<ipython-input-28-fa278f6c3171> in <module>()
1 stop_words = []
----> 2 negfeats = [(word_feats(x for x in p_test.SentimentText[f].lower().split() if x not in stop_words), 'neg') for f in l]
3 posfeats = [(word_feats(x for x in p_test.SentimentText[f].lower().split() if x not in stop_words), 'pos') for f in p]
4
5 trainfeats = negfeats+ posfeats
AttributeError: 'float' object has no attribute 'lower'
Вот мой код
p_test = pd.read_csv('TrainSA.csv')
stop_words = [ ]
def word_feats(words):
return dict([(word, True) for word in words])
l = [ ]
for f in range(len(p_test)):
if p_test.Sentiment[f] == 0:
l.append(f)
p = [ ]
for f in range(len(p_test)):
if p_test.Sentiment[f] == 1:
p.append(f)
negfeats = [(word_feats(x for x in p_test.SentimentText[f].lower().split() if x not in stop_words), 'neg') for f in l]
posfeats = [(word_feats(x for x in p_test.SentimentText[f].lower().split() if x not in stop_words), 'pos') for f in p]
trainfeats = negfeats+ posfeats
print len(trainfeats)
import random
random.shuffle(trainfeats)
print(len(trainfeats))
p_train = pd.read_csv('TrainSA.csv')
l_t = []
for f in range(len(p_train)):
if p_train.Sentiment[f] == 0:
l_t.append(f)
p_t = []
for f in range(len(p_train)):
if p_train.Sentiment[f] == 1:
p_t.append(f)
print len(l_t)
print len(p_t)
Я пробовал много способов, но до сих пор не могу заставить их использовать более низкую и раздельную функцию.
Очевидно, что 'p_test.SentimentText [f]' - число с плавающей запятой, а не строка. Вы не можете называть 'lower()' на float. – Kevin
Обычно это помогает включать фактический текст ошибки с трассировкой, а не просто упоминать об этом - иначе люди должны угадать, откуда эта ошибка могла возникнуть. – Lav