如何在每个组中找到一个字符串,然后比较其他列的值,然后将其存储在新生成的列中

2024-09-27 00:20:51 发布

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

我有三个数据集,我根据一些键合并了它们,我按照升序排列了'registrationdatetime'和'submissiondatetime'。然后我应用groupby将它们按“competitid”和“userhandle”分组。我还得先计算参加比赛的解算师的人数,然后再计算当前解算师的人数,我也为此写了一行字,但是

现在我必须创建一个名为priorperformanceofsolver(在最近结束的比赛中的表现)的新列(在最近结束的比赛中当前解算器提交的分数)

我的目标是根据比赛id安排每个小组,然后应该有“userhandles”或参加比赛的人,按他们到达比赛的日期和时间升序排列,这样我就可以计算谁在比赛中排在谁之后,最后我想做一个新的列,名为priorperformanceofsolver to存储以前的性能

很抱歉,时间这么长,但我真的不知道我是对还是错,我也不知道如何使solver列的优先级

我必须为每个用户句柄搜索每个比赛,并找到他们参加的每个比赛,其中的比赛日期是最近的,他们在最近的比赛中的分数是多少,并存储在一个名为“priorperformanceofsolver”的列中,该列必须指出他们参加的最近比赛的分数。请帮助我,我卡住了,或者如果有困难,在阅读这个超长的问题,请评论,但帮助我,如果可能的话。我对Python很陌生

''

    dftotal.groupby(["contestID", "userHandle"])
    dftotal["registerDateTime"] = pd.to_datetime(dftotal.registerDateTime, 
    utc=True)
    dftotal["RegistrationDateTime"] = dftotal["registerDateTime"]
    dftotal["submitDateTime"] = pd.to_datetime(dftotal.submitDateTime, utc 
    =True)
    dftotal["SubmissionDateTime"] = dftotal["submitDateTime"]

    dftotal.sort_values(by=['RegistrationDateTime'])
    dftotal.sort_values(by = ["SubmissionDateTime"])

    dftotal['priorcountofentrants'] = 
    dftotal.groupby(['contestID']).cumcount()

''

Data -
contstID userHndle RegistrtnDteTime SubmssnDtTme priorcntofentrnts finalScore

   6638   holo   2012-01-0921:45:20 2012-03-1020:45:20  0            100 
   6638   kolo   2012-01-0922:45:20 2012-03-1023:45:20  1             50   

   8878   holo   2011-01-0921:45:20 2011-01-1020:45:20  0            100 
   8878   kolo   2011-01-0922:45:20 2011-01-1023:45:20  1            100  

expected - 
contstID userHndle RegstrtnDteTme SubmsnDtTm prircntofentrnts finalScore 
                                                                priorperformce

   6638   holo   2012-01-0921:45:20 2012-01-1020:45:20  0       100       100
   6638   kolo   2012-01-0922:45:20 2012-01-1023:45:20  0       50        100

所以在这里kolo和holo有他们的分数从以前的比赛(最近结束的日期)显示在他们的名字旁边,即从比赛8878他们得分100和50,所以它显示在他们的名字旁边在新的比赛6638,然后它发生类似的比赛8878,它必须搜索解算器的先前表现


Tags: to时间分数pd算器groupby人数升序

热门问题