创建M列的列表

2024-06-01 02:35:22 发布

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

我有以下代码:

cleanData = cleanData.sort_values("Name")
        FinalGrade =computeFinalGrades(cleanData)
        studentList = cleanData["Studentid"].tolist()
        nameList = cleanData["Name"].tolist()
        gradelist1 = cleanData["Assignment1"].tolist()
        gradelist2 = cleanData["Assignment2"].tolist()
        gradelist3 = cleanData["Assignment3"].tolist()

        for i in range(len(studentList)):
            print(studentList[i], "  ", nameList[i], ":  ",gradelist1[i], ", ", gradelist2[i], ", ", gradelist3[i], ", ",  FinalGrade[i])

它给了我这个输出:

You have chosen to the show grade list for your file's data.
StudentID  Name                                    Final grade
s126519    Alberte Olsen :   2.0 ,  12.0 ,  0.0 ,  7.0
s123333    Alexander Hansen :   7.0 ,  12.0 ,  nan ,  12.0
s123789    Bettina Petersen :   12.0 ,  10.0 ,  10.0 ,  12.0
s128348    Ewan McGregor :   12.0 ,  nan ,  nan ,  12.0
s126734    Jepser Jespersen :   nan ,  nan ,  nan ,  -3.0
s121042    Josephine Brandt :   12.0 ,  12.0 ,  nan ,  12.0
s123235    Katinka Damgaard :   7.0 ,  7.0 ,  7.0 ,  7.0
s127110    Lise Christiansen :   -3.0 ,  -3.0 ,  -3.0 ,  -3.0
s123579    Marie Hansen :   10.0 ,  12.0 ,  nan ,  12.0
s123456    Michael Andersen :   7.0 ,  7.0 ,  4.0 ,  7.0
s124444    Nanna Nygaard :   10.0 ,  4.0 ,  4.0 ,  7.0
s121234    Natalie Sørensen :   4.0 ,  10.0 ,  nan ,  10.0
s128190    Sara Poulsen :   12.0 ,  12.0 ,  12.0 ,  12.0
s127698    Sebastian Bruun :   7.0 ,  10.0 ,  10.0 ,  10.0
s123468    Thomas Nielsen :   -3.0 ,  7.0 ,  2.0 ,  -3.0

它列出了学生ID、姓名、三项作业的成绩以及最终成绩。但是我如何编程,使它能够处理M个作业量,这样如果有5000个作业,我就不必写成绩表5000了?还有,我如何排列这些数字,使它看起来更漂亮


Tags: namefor作业nangrade成绩namelisttolist
1条回答
网友
1楼 · 发布于 2024-06-01 02:35:22

对于指定的任务,不需要显式迭代行。也不需要将每个系列转换为列表。只需指定列并使用print

首先将FinalGrade作为一个系列添加到数据帧中。然后通过序列解包(*运算符)选择任意数量的'Assignment'列:

cleanData['FinalGrade'] = computeFinalGrades(cleanData)
assignment_cols = [f'Assignment{i}' for i in range(1, 501)]
print(cleanData[['Studentid', 'Name', *assignment_cols, 'FinalGrade']])

相关问题 更多 >