如果值不在Python字典中,则映射定义

2024-07-05 15:14:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我正忙着处理泰坦尼克号的卡格尔号,我想对这段代码进行简化和Pythonify:

allData = [trainData, testData]

commonTitles = {'Mlle' : 'Miss', 'Ms' : 'Miss', 'Mme' : 'Mrs', all others : 'Rare'}

for dataset in allData:
dataset['Title'].map(commonTitles)

如何指定所有其他部分? 另外,map命令会在这里跳过'Miss'和'Mrs'吗,还是会将它们改为'ravel'?你知道吗

谢谢


Tags: 代码mapalldatasetmstestdatamrsothers
1条回答
网友
1楼 · 发布于 2024-07-05 15:14:50

首先通过删除Rare来更改字典,并添加两个具有相同键和值的元素以避免将它们替换为Rare,添加^{}以替换不匹配的值,因为DataFrame的循环列表创建了另一个:

commonTitles = {'Mlle' : 'Miss', 
                'Ms' : 'Miss', 
                'Miss':'Miss',
                'Mme' : 'Mrs',
                'Mrs': 'Mrs'}

dfs = []
for dataset in allData:
    dataset['Title' ] = dataset['Title' ].map(commonTitles).fillna('Rare')
    dfs.append(dataset)

相关问题 更多 >