gpt4 book ai didi

python - 尝试将分类数据转换为数字并运行 RandomForestClassifier

转载 作者:行者123 更新时间:2023-11-30 09:30:33 28 4
gpt4 key购买 nike

我正在测试这段代码。

df1 = df[['Group', 'Sector', 'Cat2', 'Cat3', 'Cat4', 'Cat5', 'Cat6', 'Industry', 'Market', 'Price']].copy()
df1 = df1[:100000]
df1.shape

df1 = df1.fillna(0)


df1 = pd.get_dummies(df1)


X = df1.drop(['Price'], axis=1)
y = df1['Price']

from sklearn.model_selection import train_test_split
# Split dataset into training set and test set
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3) # 70% training and 30% test


#Import Random Forest Model
from sklearn.ensemble import RandomForestClassifier

# Create the model with 100 trees
model = RandomForestClassifier(n_estimators=100,
bootstrap = True,
max_features = 'sqrt')
# Fit on training data
model.fit(X_train, y_train)

我在这一行收到错误:model.fit(X_train, y_train)

这是我的错误:ValueError:未知的标签类型:'连续'

我的设置是这样的:“df”中有很多字段,我将一些字段复制到“df1”。这些都是分类的:'Group'、'Sector'、'Cat2'、'Cat3'、'Cat4'、'Cat5'、'Cat6'、'Industry'、'Market'

这是数字:'价格'

我正在使用 one-hot 编码将分类项目转换为数字项目,并且数字(价格)保持原样。这个设置有问题吗,还是没问题?只是在这里寻找一些指导并希望找到解决方案。谢谢。

最佳答案

您正在使用分类器来预测连续价格。当它引用标签时,sklearn表示目标,所以问题不是你的X,而是y >。您需要的是 sklearn.ensemble.RandomForestRegressor 。这样,您将能够预测连续值,例如价格

改用这个:

from sklearn.ensemble import RandomForestRegressor

model = RandomForestRegressor(n_estimators=100,
bootstrap = True,
max_features = 'sqrt')
# model.fit(X, y...

关于python - 尝试将分类数据转换为数字并运行 RandomForestClassifier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59656424/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com