如何在Python中把Sklearn数据集转换为Pandas数据帧

如何在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()

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程