Python 数据帧应用(映射)函数类型错误
有人能指出我在这段代码中的错误吗:Python 数据帧应用(映射)函数类型错误,python,pandas,dataframe,lambda,apply,Python,Pandas,Dataframe,Lambda,Apply,有人能指出我在这段代码中的错误吗: groupIds = allData.drop_duplicates('GroupID').set_index('Ticket')['GroupID'] allData.loc[(allData['SexGroup']!='Man') & (allData['GroupID']=='Alone'), 'GroupID'].apply(lambda x: x['Ticket'].map(groupIds).fillna('Alone')) 错误是:
groupIds = allData.drop_duplicates('GroupID').set_index('Ticket')['GroupID']
allData.loc[(allData['SexGroup']!='Man') & (allData['GroupID']=='Alone'), 'GroupID'].apply(lambda x: x['Ticket'].map(groupIds).fillna('Alone'))
错误是:
Exception has occurred: TypeError
string indices must be integers
谢谢
编辑:
资料
编辑2:
该代码应该遍历所有性别为女性且当前GroupID为“单独”的GroupID。然后,如果满足这些条件,对于该行,检查“Ticket”值是否出现在“Ticket”列的其他位置。如果是,则返回该事件的GroupID。如果没有,请将它“单独”留给任何试图做类似事情的人,这对我很有用:
allData.loc[(allData['SexGroup']!='Man') & (allData['GroupID']=='Alone'), 'GroupID'] = allData['Ticket'].map(groupIds).fillna('Alone')
对于任何试图做类似事情的人来说,这对我来说都很有效:
allData.loc[(allData['SexGroup']!='Man') & (allData['GroupID']=='Alone'), 'GroupID'] = allData['Ticket'].map(groupIds).fillna('Alone')
你也可以发布一些数据吗?我们可以在哪里复制和解决此问题?粘贴
allData.head()
会有帮助。抱歉,will Do您正在使用。在系列中应用。在lambda
函数中,x
是一个字符串。您也可以发布一些数据吗?我们可以在哪里复制和解决此问题?粘贴allData.head()
会有帮助。抱歉,如果您正在使用,请在一个系列上应用。在lambda
函数中,x
是一个字符串。