使用回归、朴素贝叶斯、决策树、聚类等写一篇python的鸢尾花数据集
时间: 2023-07-10 10:33:28 浏览: 125
好的,下面是一个使用回归、朴素贝叶斯、决策树、聚类等算法对鸢尾花数据集进行处理的Python代码:
```python
import pandas as pd
import numpy as np
from sklearn.datasets import load_iris
from sklearn.linear_model import LinearRegression
from sklearn.naive_bayes import GaussianNB
from sklearn.tree import DecisionTreeClassifier
from sklearn.cluster import KMeans
# 加载数据集
iris = load_iris()
# 将数据集转换为DataFrame类型
iris_df = pd.DataFrame(data=np.c_[iris['data'], iris['target']], columns=iris['feature_names'] + ['target'])
# 回归分析
X = iris_df[['sepal length (cm)', 'sepal width (cm)']]
y = iris_df['petal length (cm)']
reg = LinearRegression().fit(X, y)
print("回归分析系数:", reg.coef_)
# 朴素贝叶斯分类
X = iris_df[['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']]
y = iris_df['target']
clf = GaussianNB().fit(X, y)
print("朴素贝叶斯准确率:", clf.score(X, y))
# 决策树分类
X = iris_df[['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']]
y = iris_df['target']
clf = DecisionTreeClassifier().fit(X, y)
print("决策树准确率:", clf.score(X, y))
# 聚类分析
X = iris_df[['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']]
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
print("聚类中心点:", kmeans.cluster_centers_)
```
以上代码中,我们首先加载了鸢尾花数据集并将其转换为DataFrame类型。然后使用回归分析、朴素贝叶斯分类、决策树分类、聚类分析对数据集进行处理。其中,回归分析使用了线性回归算法,朴素贝叶斯分类使用了高斯朴素贝叶斯算法,决策树分类使用了决策树算法,聚类分析使用了K均值聚类算法。
希望以上代码对你有所帮助!
阅读全文