如何在pandas中将逗号分隔的单元格值拆分为整数列表
解决方法
你可以通过字符串拆分+类型转换实现需求,有两种常用实现方式:
方式1:直接在DataFrame中批量处理(适合数据量多的场景)
import pandas as pd # 原有读取、筛选逻辑(注意列名大小写/空格要和实际Excel匹配,示例中列名是`Current Year`而非`Current year`) df = pd.read_excel('Grade.xlsx') df = df.loc[df['Current Year'] == "Final Year"] # 拆分字符串并转换为整数列表 df['num_list'] = df['Available Number'].str.split(',').apply(lambda x: [int(num) for num in x]) # 按行提取结果 list1 = df['num_list'].iloc[0] list2 = df['num_list'].iloc[1]
方式2:基于你已提取的Num变量直接处理(适合小数据量快速处理)
Num = df['Available Number'].values list1 = [int(num) for num in Num[0].split(',')] list2 = [int(num) for num in Num[1].split(',')]
逻辑说明
str.split(','):将逗号分隔的字符串拆分为字符串类型的列表,比如"589,639,741"会被拆为["589", "639", "741"]- 列表推导式
[int(num) for num in x]:遍历拆分后的字符串列表,将每个元素转换为整数类型
最终输出的list1、list2完全符合你要求的格式:
list1 = [586] list2 = [589, 639, 741]
内容的提问来源于stack exchange,提问作者Hetali
相关产品推荐
相关产品推荐

