【问题标题】:Error "could not convert string to float: 'INLAND'"错误“无法将字符串转换为浮点数:'INLAND'”
【发布时间】:2019-08-15 08:55:37
【问题描述】:

我正在做一个使用机器学习进行房价预测的项目,并希望将其提交给一家私人公司申请。

我正在为这个项目使用 Jupiter 笔记本,但我无法修复有关将单词字符串转换为数字数据的错误

from sklearn.model_selection import train_test_split
X_train,X_test, Y_train, Y_test= train_test_split(X,
                                              Y,
                                             test_size=0.2,
                                               random_state=0)
from sklearn.preprocessing import StandardScaler
independent_scalar = StandardScaler()
X_train = independent_scalar.fit_transform (X_train) #fit and transform
X_test = independent_scalar.transform (X_test) # only transform
print(X_train)

我希望训练集数据是完全数字的

【问题讨论】:

  • 您能否向我们展示至少一个链接或您正在使用的数据集的前几行。错误发生在哪里。
  • 您认为标题中的“请帮我解决这个问题”会增加标题的描述性吗?

标签: python machine-learning scikit-learn


【解决方案1】:

我相信您拥有的数据集中有字符串。 StandardScaler() 仅采用数值数据并将值标准化。

要将文本转换为数字数据,您可以查看sklearn.feature_extraction.text 中的函数。根据您的数据,您可以查看最适合的功能。 CountVectorizerTfidfVectorizer 是最常用的矢量化器。 CountVectorizer 基于词袋算法,TfidfVectorizer 基于 TF-IDF。

要知道使用哪个函数,如果我们知道数据集的样子会更容易。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-31
    • 2018-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多