zoukankan      html  css  js  c++  java
  • 机器学习使用tokenizer.fit_on_texts报‘float‘ object has no attribute ‘lower‘错解决办法

    机器学习使用tokenizer.fit_on_texts报'float' object has no attribute 'lower'错解决办法

    最近在学习机器。在学习过程中使用kaggle中的Womens Clothing E-Commerce Reviews.csv数据集,用Keras分词器Tokenizer,使用tokenizer.fit_on_texts生成词典报'float' object has no attribute 'lower' 错。

    from keras.preprocessing.text import Tokenizer 
    X_train_lst = df_train["Review Text"] 
    y_train = df_train["Rating"].values 
    dictionary_size = 20000 
    tokenizer = Tokenizer(num_words=dictionary_size) 
    tokenizer.fit_on_texts( X_train_lst) 
    X_train_tokenized_lst = tokenizer.texts_to_sequences(X_train_lst)
    

    在这里插入图片描述

    分析原因:是数据集中"Review Text"中存在字段为空的情况,pandas导入的时候自动转成NaN了,所以报没有lower的属性的错误。

    解决方法:增加fillna函数转换将NaN转成空字符串。

    X_train_lst = df_train["Review Text"].fillna("")
    
  • 相关阅读:
    (2).net体系
    (1)php开篇常识
    java基础知识-xx
    java基础知识-字符串与数组
    java基础知识-流程控制
    小明的喷漆计划
    加分二叉树
    括号序列
    P1045
    胖男孩
  • 原文地址:https://www.cnblogs.com/xiejava/p/15541901.html
Copyright © 2011-2022 走看看