weixin_39808315 2021-07-02 09:14 采纳率: 40%
浏览 75
已采纳

pandas处理Excel列数据

各位大神,我把整个需求描述出来,昨天提出的已经被采纳,非常感谢,但我接触python只有两天,没有开发经验,所以还得大神帮忙看看如何解决

学校有张招生的数据表,列字段有100多个,由于我只需要特定的一些列字段,大概在50个左右,所以我通过usecols的方式提取出需要的字段,但是提取出来的有些字段需要处理下数据,比如【录取专业】字段,这个字段下有一部分单元格前面有空格和数字,我想通过pandas将这些字段里面这些过滤掉,然后将特定的字段保存到新的Excel中,请问该怎么写这个代码

import pandas as pd
name = (input('请输入文件名:')+'.xls')

table = pd.read_excel('work.xls',usecols=["来源省","学号","考生号","姓名","身份证","院系","录取专业"],dtype=str)

print (table)
table.to_excel(name+'转换后.xlsx',index=False)

原始数据截图:
img

  • 写回答

2条回答 默认 最新

  • 7*24 工作者 2021-07-02 09:41
    关注
    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    
    import pandas as pd
    import re
    name = (input('请输入文件名:') + '.xls')
    table = pd.read_excel('work.xls', usecols=["来源省", "学号", "考生号", "姓名", "身份证", "院系", "录取专业"], dtype=str)
    
    print(table)
    table['录取专业'] = table['录取专业'].map(lambda x:x.replace(' ',''))
    table['录取专业'] = table['录取专业'].map(lambda x:re.sub('\d+','',x,count=1))
    print(table)
    table.to_excel(name + '转换后.xlsx', index=False)
    
    
    ####示例演示
    import pandas as pd
    import re
    names = [' 金融工程','金融工程','1电子商务','2电子商务','3电子商务']
    df = pd.DataFrame(names,columns=['录取专业'])
    print(df['录取专业'])
    df['录取专业'] = df['录取专业'].map(lambda x:x.replace(' ',''))
    df['录取专业'] = df['录取专业'].map(lambda x:re.sub('\d+','',x,count=1))
    print('============')
    print(df['录取专业'])
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同