ValueError:Y包含以前看不见的标签:'一些标签'

发布于 2025-02-10 04:32:32 字数 332 浏览 3 评论 0原文

每当我试图执行以下代码时,都会显示ValueError:Y包含以前看不见的标签:'Some_label'

X_test['Gender'] = le.transform(X_test['Gender'])
X_test['Age'] = le.transform(X_test['Age'])
X_test['City_Category'] = le.transform(X_test['City_Category'])
X_test['Stay_In_Current_City_Years'] 
=le.transform(X_test['Stay_In_Current_City_Years'])

Whenever i am trying to execute the following code it is showing ValueError: y contains previously unseen labels: 'some_label'

X_test['Gender'] = le.transform(X_test['Gender'])
X_test['Age'] = le.transform(X_test['Age'])
X_test['City_Category'] = le.transform(X_test['City_Category'])
X_test['Stay_In_Current_City_Years'] 
=le.transform(X_test['Stay_In_Current_City_Years'])

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

秉烛思 2025-02-17 04:32:32

我不确定您的整个代码是什么,但我认为问题是您的火车数据与您的测试数据不同,这意味着当您使用“转换”时,测试中有一些数据点,而您适合您“火车”数据上的变压器。

让我们以一个示例来看看。如果您注意到我已经在 train 数据上安装了(训练)我的columntransformer(训练)我的columntransformer,当我使用它来转换我的测试数据数据时,它将通过错误,因为它永远不会看到的值 z 在测试中存在但在火车数据集中不存在:

import pandas as pd 
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import OneHotEncoder
from sklearn.compose import make_column_transformer

df = pd.DataFrame(['a','b','c','a','b','z'], columns=['c1'])

train = df[:3]

test = df[3:]

cl = make_column_transformer((OneHotEncoder(),train.columns)) 

cl.fit(train)

cl.transform(test)

这将通过以下错误:

valueerror:在转换期间第0列中发现的未知类别['z']

I am not really sure what is your whole code is but I think the problem is your train data is different from your test data, meaning when you are using "transform" there is some data point in test that was not available while you fit your transformer on "Train" data.

Lets see it with an example. If you notice I have fitted (trained) my ColumnTransformer with OneHotEncoder on train data and when I will use it to transform my test data it will through an error because it has never seen value Z which is present in test but not in train dataset :

import pandas as pd 
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import OneHotEncoder
from sklearn.compose import make_column_transformer

df = pd.DataFrame(['a','b','c','a','b','z'], columns=['c1'])

train = df[:3]

test = df[3:]

cl = make_column_transformer((OneHotEncoder(),train.columns)) 

cl.fit(train)

cl.transform(test)

This will through below error:

ValueError: Found unknown categories ['z'] in column 0 during transform

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文