【发布时间】:2021-08-15 08:46:26
【问题描述】:
我有一本包含学生姓名和卷号的字典,即 class_details。 我想打印卷号以及缺勤学生的姓名,缺勤学生的姓名存储在一个集合中。
源代码:
import pandas as pd
df = pd.DataFrame({'Roll num': [17013001,17013002,17013003,17013004,17013005,17013006,17013007,17013008,17013009,17013010,17013011,17013012,17013013,17013014,17013015,17013016,17013017,17013018,17013019,17013020,17013021,17013022,17013023,17013024,17013025,17013026,17013027,17013028,17013029,17013030,17013201,18013024,18013025,18013026,18013027,18013028,18013029,18013030,18013031,18013032,18013033,18013034,18013035,18013036,18013037,18013038,18013039,18013040,18013041,18013042,18013043,18013044],
'Name': ['Anjali Saini', 'Anjali Srivastava', 'Ayushi Solanki', 'Bhawana Saroha', 'Ekta Joshi', 'Harshita Virodhiya', 'Harshita Sehrawat', 'Monika Tehlan', 'Mudita Shiromani', 'Muskan Chahar', 'Neelam Chahal', 'Neeru Bhardwaj', 'Neha Yadav', 'Nishu Rathi', 'Pallavi Singh', 'Pragya Tomar', 'Punerva', 'Saumya Singh', 'Shagun Rana', 'Shaily Bavra', 'Sheena Goyal', 'Shipra Gaur', 'Shivani Pawriya', 'Shiwani Sihan', 'Sonam Bhardwaj', 'Sonika Singh', 'Srishti Rajbhar', 'Sujata', 'Ujjawal Tyagi', 'Vishwa Rana', 'Shalu Yadav', 'Aparna Singh', 'Bharti Kaushik', 'Deepika Yadav', 'Gunika Mehra', 'Heena Saini', 'Himanshi Singh', 'Kajal Rajput', 'Anshu Tomar', 'Krishna Aggarwal', 'Kusum Kundu', 'Monika Kushwaha', 'Monika Shira', 'Neha Kardam', 'Nisha Pahal', 'Osheen Kamboj', 'Preeti Deshwal', 'Priyanka Sharma', 'Renu Malik', 'Renu Bisht', 'Sonia Kadyan', 'Swati Arya']})
class_list = df['Name']
class_set = set(class_list)
present = pd.DataFrame({'Attendees': ['Anshu Tomar','Aparna Singh','Ayushi Solanki','Bharti Kaushik','Bhawana Saroha','Deepika Yadav','Harshita Sehrawat','Harshita Virodhiya','Heena Saini','Kajal Rajput','Krishna Aggarwal','Kusum Kundu','Monika Shira','Mudita Shiromani','Muskan Chahar','Neha Kardam','Neha Yadav','Nisha Pahal','Nishu Rathi','Pragya Tomar','Preeti Deshwal','Punerva','Renu Bisht','Renu Malik','Saumya Singh','Shaily Bavra','Shalu Yadav','Sheena Goyal','Shivani Pawriya','Sonam Bhardwaj','Sonia Kadyan','Sonika Singh','Sujata','Swati Arya','Ujjawal Tyagi','bala suthar']})
present_list = present['Attendees']
present_set = set(present_list)
pres = len(present_set)
pres_num = pres - 1 #subtracting the extra 1 count for the faculty
abs_num = 52 - pres_num #52 is the strength of the class
absent_set = class_set - present_set
print("Attendance of Java Lecture, 27/05")
print("Number of Present Students:", pres_num)
print("Number of Absentees:", abs_num)
print("Names of Absentees are :", *sorted(absent_set),sep="\n")
class_details = df.set_index('Name')['Roll num'].to_dict()
我的输出:
Attendance of Java Lecture, 27/05
Number of Present Students: 35
Number of Absentees: 17
Names of Absentees are :
Anjali Saini
Anjali Srivastava
Ekta Joshi
Gunika Mehra
Himanshi Singh
Monika Kushwaha
Monika Tehlan
Neelam Chahal
Neeru Bhardwaj
Osheen Kamboj
Pallavi Singh
Priyanka Sharma
Shagun Rana
Shipra Gaur
Shiwani Sihan
Srishti Rajbhar
Vishwa Rana
Desired Output 是包含缺勤学生的卷号和姓名的学生列表。
【问题讨论】:
-
欢迎来到 Stack Overflow。请查看How to Ask。此站点上的问题需要是独立的,这意味着没有指向其他站点上的代码或数据的链接。相反,请提供minimal reproducible example 作为可用于测试的可复制代码以及您的预期输出。你可以edit这个问题。
-
感谢@AlexK。我现在已经尽力做到了。
-
一个最小的可重现示例应该包含一个小的数据样本(您的实际数据样本或您自己创建的数据以匹配您的实际数据的结构)作为可复制的一段代码。目前,由于我们不知道您的 CSV 的内容,因此我们对您创建的变量或它们如何对应于您所需的输出一无所知。
-
感谢@AlexK。我希望现在一切都好。
标签: python pandas dictionary set