如何去除DataFrame分组后课程代码输出的冗余内容?
解决DataFrame教员课程列冗余内容问题
问题原因
你看到的array(['MCB359', 'MED119'], dtype=object)是numpy数组的默认字符串表示——因为你直接将group['code'].unique()返回的numpy数组放入了结果中,而非处理后的纯字符串。
修正代码
将课程代码处理为干净的逗号分隔字符串,并替换结果中的数组变量:
for name, group in grouped: num_students = group['RegStudents'].sum() num_sections = group['code'].count() # 将唯一课程代码转为Python列表,再拼接成字符串 course_code_str = ', '.join(group['code'].unique().tolist()) # 若code列存在非字符串类型,需先转字符串: # course_code_str = ', '.join(str(code) for code in group['code'].unique()) # 构建结果时使用course_code_str而非原始数组 result_entry = [ name, 'ACD', # Faculty Title 'MCBS', # Home program course_code_str, 'This faculty is fully utilized.' ]
最终效果
修正后输出会变为:
['Ashley Tisdale', 'ACD', 'MCBS', 'MCB359, MED119', 'This faculty is fully utilized.']
内容的提问来源于stack exchange,提问作者MSDataAnalyst75
相关产品推荐
相关产品推荐

