开始使用免费开始使用

对交易数据进行独热编码

在整个课程中,我们会使用一套通用流程来预处理数据,以便用于购物篮分析。第一步是导入一个 pandas DataFrame,并选择包含交易记录的列。该列中的每条交易都是一个字符串,由若干用逗号分隔的商品组成。下一步是使用 lambda 函数将每个交易字符串拆分为列表,从而把该列转换为"列表的列表"。

在本练习中,您将从杂货数据集中的"列表的列表"开始,变量名为 transactions。接着,您会将 transactions 转换为一个独热编码的 DataFrame。每一列由 TRUEFALSE 值组成,用以指示某个商品是否包含在一笔交易中。

本练习是课程的一部分

Python 中的购物篮分析

查看课程

练习说明

  • mlxtend.preprocessing 导入 TransactionEncoder
  • 实例化一个交易编码器,并在 transactions 中识别唯一商品。
  • 以数组形式对 transactions 进行独热编码,并将结果赋给 onehot
  • 将该数组转换为 pandas DataFrame,并使用商品名称作为列名。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import the transaction encoder function from mlxtend
from ____.____ import ____
import pandas as pd

# Instantiate transaction encoder and identify unique items in transactions
encoder = TransactionEncoder().____(____)

# One-hot encode transactions
onehot = encoder.____(transactions)

# Convert one-hot encoded data to DataFrame
onehot = pd.DataFrame(____, columns = encoder.columns_)

# Print the one-hot encoded transaction dataset
print(onehot)
编辑并运行代码