如何使用python处理测试数据集中看不见的分类值?

Neo*_*Neo 6 python machine-learning feature-extraction categorical-data one-hot-encoding

假设我有位置功能。在训练数据集中,它的唯一值是“NewYork”、“Chicago”。但在测试集中,它有“NewYork”、“Chicago”、“London”。那么在创建一种热编码时如何忽略“伦敦”?换句话说,如何不对只出现在测试集中的类别进行编码?

Jai*_*eri -1

假设这是您的列表

train_data = ['NewYork', 'Chicago']
test_set = ['NewYork', 'Chicago', 'London']
Run Code Online (Sandbox Code Playgroud)

根据你的问题:

如何不对只出现在测试集中的类别进行编码?

for each in test_set:
    if filter(lambda element: each in element, train_data):
        print each
Run Code Online (Sandbox Code Playgroud)

这输出NewYork& Chicago,这意味着London被跳过。