使用Sklearn.preprocessing对包含列表的pandas.DataFrame列进行编码,可以通过以下步骤实现:
import pandas as pd
from sklearn.preprocessing import MultiLabelBinarizer
data = {'fruit': [['apple', 'orange'], ['banana', 'grape'], ['kiwi', 'apple']]}
df = pd.DataFrame(data)
mlb = MultiLabelBinarizer()
encoded_data = mlb.fit_transform(df['fruit'])
encoded_df = pd.DataFrame(encoded_data, columns=mlb.classes_)
df_encoded = pd.concat([df, encoded_df], axis=1)
print(df_encoded)
编码后的DataFrame示例输出:
fruit apple banana grape kiwi orange
0 [apple, orange] 1 0 0 0 1
1 [banana, grape] 0 1 1 0 0
2 [kiwi, apple] 1 0 0 1 0
这样,我们使用Sklearn.preprocessing的MultiLabelBinarizer对包含列表的pandas.DataFrame列进行了编码。
关于MultiLabelBinarizer的更多信息,请访问腾讯云相关产品文档链接地址:MultiLabelBinarizer