如何在Python中把Sklearn数据集转换为Pandas数据帧
在这篇文章中,我们看看如何在Python中把sklearn数据集转换成pandas数据帧。
Sklearn和pandas是被广泛用于数据科学和机器学习操作的python库。Pandas主要侧重于数据处理、操作、清理和可视化,而Sklearn库则提供了大量的工具和功能来训练机器学习模型。
例1:将Sklearn数据集(虹膜)转换为Pandas数据框架
这里我们从sklearn库中导入了虹膜数据集。然后我们通过调用load_iris()方法加载这些数据,并将其保存在iris_data这个命名的变量中。这个变量的类型是sklearn.utils._bunch.Bunch 。iris_data有不同的属性,即数据、目标、框架、目标名称、DESCR、特征名称、文件名、Data_module。我们将利用data和feature_names属性。data属性返回虹膜数据集的完整数据矩阵。feature_names属性返回数据的列名列表,以供考虑。
# IMPORT THE PANDAS LIBRARY
# TO USE THE DATAFRAME TOOL
import pandas as pd
# IMPORT THE IRIS DATA FROM THE
# SKLEARN MODULE
from sklearn.datasets import load_iris
# LOAD THE IRIS DATASET BY CALLING
# THE FUNCTION
iris_data = load_iris()
# PLACE THE IRIS DATA IN A PANDAS
# DATAFRAME
df = pd.DataFrame(data=iris_data.data,
columns=iris_data.feature_names)
# DISPLAY FIRST 5 RECORDS OF THE
# DATAFRAME
df.head()
输出:
sepal length (cm) sepal width (cm) petal length (cm) petal width (cm)
0 5.1 3.5 1.4 0.2
1 4.9 3.0 1.4 0.2
2 4.7 3.2 1.3 0.2
3 4.6 3.1 1.5 0.2
4 5.0 3.6 1.4 0.2
例2:将Sklearn数据集(糖尿病)转换为Pandas数据框架
在这个例子中,我们将创建一个名为convert_to_dataframe的函数,它将帮助我们把sklearn数据集转换成pandas数据框架。这个函数需要一个参数,即sk_data,这是sklearn的数据集,并返回这个数据的pandas数据框架格式。在这个例子中,我们使用sklearn的糖尿病数据集。
# IMPORT THE PANDAS LIBRARY
# TO USE THE DATAFRAME TOOL
import pandas as pd
# IMPORT THE DIABETES DATA FROM THE
# SKLEARN MODULE
from sklearn.datasets import load_diabetes
# CREATE THE `convert_to_dataframe()
# FUNCTION
from sklearn.utils._bunch import Bunch
def convert_to_dataframe(sk_data: Bunch):
if not isinstance(sk_data, Bunch):
raise Exception("Not a sklearn dataset")
return pd.DataFrame(data=sk_data.data,
columns=sk_data.feature_names)
# LOAD THE DIABETES DATA USING
# THE `convert_to_dataframe()` FUNCTION
diabetes_data = convert_to_dataframe(sk_data=load_diabetes())
# DISPLAY FIRST 5 RECORDS OF THE DATAFRAME
diabetes_data.head()