Press "Enter" to skip to content

熊猫Playbook:7个必须了解的全面数据函数

使用DALL·E 2生成的图像

在数据分析和机器学习领域,Pandas库是一个强大的工具。它拥有200多个函数和方法,使您能够整理和转换数据,但也因其复杂性而使您无法整理和转换数据。它是一把双刃剑。

因此,我们将探索Pandas最常见但最有用的函数和方法。了解这些将使您超越其他初学者学习Pandas。

我们将在本文的整个过程中使用一个伪数据集。

第一步是将pandas作为pd导入。这是导入pandas的最佳实践之一,因为pd是pandas的一个众所周知的缩写。

import pandas as pd

导入数据

在进行任何数据操作之前,您需要导入数据。 read_csv()函数是将数据集加载到Pandas DataFrame的入口点。通过指定文件路径,此函数使数据活跃起来,使您能够开始数据探索和分析。

要导入,请按照以下语法并输入您的数据集文件路径。

In[*]  car_sales = pd.read_csv("./data/car-sales.csv")       car_sales
输出

了解数据的概况

想知道DataFrame的前几行或后几行? head()tail()提供了一个快速的预览,帮助您评估数据集的结构和内容。在进行数据转换之前,这是对数据进行初步了解的理想方式。您可以在head(9)tail(9)内输入参数,以指定您希望看到的项目数量。默认值为5个项目。

为了说明,看下面的示例代码输入和输出。

In[*]  car_sales.head()
输出
In[*]  car_sales.tail()
输出

全面了解您的数据

info()函数是您的数据侦探。它提供了DataFrame的全面摘要,展示了非空条目的数量、数据类型、内存使用情况等。这个快速概览可以指导您的数据清洗和准备工作。

In[*]  car_sales.info()
输出

揭示描述性统计信息

统计信息只需一个函数即可获得。 describe()函数提供了大量的描述性统计信息,包括均值、中位数、最小值、最大值和四分位数。了解数值数据的分布并发现潜在的异常值。请记住,describe()可能不会显示有意义的信息,它将始终取决于您的数据集。

In[*]  car_sales.describe()
输出

用分组的方式获取洞察

当按特定属性分组时,数据通常会讲述一个更丰富的故事。 groupby() 函数允许您根据特定列对数据进行分段,这使它成为聚合、汇总和可视化数据集内趋势的重要工具。

In[*]  car_sales.groupby(["Make"]).mean()
输出

赋予自定义转换的能力

有时,现成的函数是不够的。 apply() 函数赋予您自由将自定义函数应用于数据的能力。这种灵活性为适应特定需求进行定制数据转换打开了大门。这在操作和清理数据集时也非常重要。

在这个例子中,我们将应用 lambda 函数来移除价格中的 $,.00,并将其转换为 int 以执行有意义的功能。查看价格的 BEFOREAFTER

In[*]  car_sales["Price"] = car_sales["Price"].apply(lambda x: x.replace(".00", '')).str.replace('[\$\,]', '').astype(int)
       car_sales
BEFORE
AFTER

处理缺失数据

处理缺失数据是一个常见的挑战。 fillna() 函数允许您替换丢失的值,而 dropna() 可以删除包含缺失数据的行或列。这些函数确保您的分析基于完整和准确的信息。

为了说明,让我们导入一个包含缺失数据的新数据集。

In[*]  car_sales_missing = pd.read_csv("./data/car-sales-missing-data.csv")
       car_sales_missing
输出

我们可以清楚地看到一些 Odometer 的数据具有 NaN 的值,因此,让我们使用 fillna() 和 Odometer 的平均值来填充缺失值。

In[*]  car_sales_missing["Odometer"] = car_sales_missing["Odometer"].fillna(car_sales_missing["Odometer"].mean())
输出

现在,只有颜色、门数和价格存在 NaN,分别位于索引 6、7、8 和 9。我们将使用 dropna() 删除包含 NaN 的行和列。

In[*]  car_sales_missing = car_sales_missing.dropna()
       car_sales_missing
输出

Pandas 不仅仅是一个库;它是进入有效数据操作和分析的门户。凭借这些重要的函数,您可以自信地应对现实世界的数据挑战和机器学习问题。无论您是数据科学家、分析师还是机器学习工程师,Pandas 都能让您将混乱的数据集转化为有价值的洞察。因此,深入研究、实验,并发挥 Pandas 在数据驱动的努力中无限的潜力。

保持好奇心,让你的分析思维保持活跃!

如果你想更多地了解Pandas,请考虑查看他们的文档!

Leave a Reply

Your email address will not be published. Required fields are marked *