当前位置: 首页 > 知识库问答 >
问题:

获取值错误:无法将字符串转换为浮点值:随机林分类器中的“管理”问题

方宜
2023-03-14

创建随机森林分类器模型以获取准确度评分数据。在文件中,它由数字、浮点、字符串类型的数据组成。遇到问题:-ValueError:无法将字符串转换为浮点:“管理”

import numpy as np
import random 
from sklearn import metrics

data = pd.read_csv("C:\\Users\\username\\Documents\\train.csv")  # reading csv file #
#data.head(10)
X = data.iloc[:, 0:17].values
y = data.iloc[:, 4].values


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.ensemble import RandomForestClassifier

clf = RandomForestClassifier(n_estimators=5)
clf.fit(X_train,y_train)
y_pred = clf.predict(X_test)


from sklearn.metrics import accuracy_score

print(accuracy_score(y_test, y_pred))

28 29 clf=RandomForestClassifier(n_估计器=5)中的ValueError回溯(最近一次调用)---

~\AppData\本地\连续\anaconda3\lib\site-包\sk学\合奏\forest.py适合(自我,X,y,sample_weight)247 248#验证或转换输入数据-

检查数组中的~\AppData\Local\Continuum\anaconda3\lib\site packages\sklearn\utils\validation.py(数组、接受稀疏、接受大稀疏、数据类型、顺序、复制、强制所有有限、确保二维、允许nd、确保最小样本、确保最小特征、警告数据类型、估计)494尝试:495警告。simplefilter('错误'、复杂警告)--

asarray中的~\AppData\Local\Continuum\anaconda3\lib\site packages\numpy\core\numeric.py(a,dtype,order)536 537“”--

ValueError:无法将字符串转换为浮点:“管理”

在[]中:

共有1个答案

东郭子默
2023-03-14

我不能评论,所以我在这里发布。

首先,为了确保:

## I think you missed a 'd' in that variable name
ata = pd.read_csv("C:\\Users\\username\\Documents\\train.csv") 

我认为你应该向我们提供你的输入数据样本。您的其中一列似乎包含特定类型的数据集ValueError(“不支持复杂数据”)

一般来说,在导入数据时,在向算法输入数据之前,您应该至少进行一些基本的预处理,以确保数据格式正确。

 类似资料:
  • ()中的ValueError回溯(最近一次调用)---- ~\Anaconda3\lib\site packages\sklearn\preprocessing\data.py in fit_transform(self,X,y)2017”““2018年返回所选的fit_transform(X,self.\u fit_transform- ~\Anaconda3\lib\site-包\skLear

  • 问题内容: 我想将二进制数转换为浮点数。这是一种可能性的示例: 给我正确的输出: 不幸的是,我正在使用二进制 字符串 ,即,我需要类似的东西。 但是,这不起作用: 我尝试使用它将带引号的可打印数据块转换回二进制并返回二进制数据。但是最终,我得到了同样的错误: 我了解输出数字是整数的情况,但是如果我想获得数字12.546怎么办?那么该函数对二进制字符串的调用是什么样的? 问题答案: 另一种选择是做

  • 问题内容: 给出的是一个简单的CSV文件: 显然,实际数据集比这要复杂得多,但是这一数据再现了错误。我正在尝试为其构建一个随机森林分类器,如下所示: 但是当我调用fit()时,我只是得到了这个追溯: scikit-learn版本为0.16.1。 问题答案: 在使用fit之前,您必须进行一些编码。如前所述,fit()不接受字符串,但是您可以解决此问题。 有几种可以使用的类: LabelEncoder

  • 问题内容: 正如标题所说。我不认为有可能这样做,但如果可以告诉我。 这是我正在编写的bukkit(minecraft服务器)插件所必需的。我要执行一个命令:tnt [power]。电源是我想转换为浮点数的返回字符串。 谢谢 问题答案: 用于进行转换。 和之间的区别只是回报。如果需要(对象),请使用前者;如果要数字,请使用后者。

  • 是 在[-1,1]中获取随机Float值的好方法? 一个常见的建议似乎是

  • 问题内容: 我有一个像 从上面的字符串中,我需要获取一个值。 当我使用替换所有功能。 当字符串有两个点时,这将不起作用。 浮点值的位置可能有所不同。 问题答案: 首先丢弃所有非float字符,然后像这样隐秘给Float: