• python excel 读取及写入固定格式


    import xlrd
    import xlwt
    import re
    import pandas as pd
    from datetime import date,datetime
    
    file_path = "C:\\Users\\function_model.xls"
    def readexcel():
        df = pd.read_excel(file_path ,"配置")
    
        # e_id
        # id
        # expression
        # name
        # freq
        # column_data = df['e_id']
    
        excel_date = df.loc[:, ['e_id', 'id','expression', 'name', 'freq']]
        str1= 'rDataV'
        str2 = 'fillMissingDates'
        str3 = 'jactor_value'
        history3 = 'quantile(B'
        trend_judgement = 'judgement('
        marginal_trend_media = 'trend_media('
    
        my_array = []
        list_name = ["e_id", "expression_index", "expression_name", "expression_factor_freq",
                      "expression_factor_id", "expression_factor_is_industry", "expression_name"]
        my_array.append(list_name)
    
    
        for index, row in excel_date.iterrows():
            expression = row['expression']
            e_id = row['e_id']
            id = row['id']
            name = row['name']
            freq = row['freq']
            if str1 in expression:
                list_index=[e_id ,0 ,  "B" ,freq ,0 ,0 ,"仅占位"]
                my_array.append(list_index)
    
            elif str2 in expression:
                pattern = r'\b\d{12}\b'
                matches = re.findall(pattern, expression)
                list_index = [e_id, 0, "B", freq, matches[0], 1, name[:-4]]
                my_array.append(list_index)
            elif marginal_trend_media in expression:
                pattern = r'\b\d{12}\b'
                matches = re.findall(pattern, expression)
                list_index = [e_id, 0, "B", freq, matches[0], 1, name[:-5]]
                my_array.append(list_index)
            elif history3 in expression:
                pattern = r'\b\d{12}\b'
                matches = re.findall(pattern, expression)
                list_index = [e_id, 0, "B", freq, matches[1], 1, name[:-5]]
                my_array.append(list_index)
            elif trend_judgement in expression:
                pattern = r'\b\d{12}\b'
                matches = re.findall(pattern, expression)
                list_index = [e_id, 0, "B", freq, matches[1], 1, name[:-5]]
                my_array.append(list_index)
    
            elif str3 in expression:
                list_index = [e_id, 0, "B", freq, 0, 0, "占位"]
                my_array.append(list_index)
            else:
               list_index = [e_id, 0, "B", freq, "待填充", 1, "待填充"]
               my_array.append(list_index)
        print(my_array)
        # 将数组转化为DataFrame
        dd = pd.DataFrame(my_array)
        dd.to_excel('配置.xlsx', index=False, header=False)
    
    if __name__ == '__main__':
        readexcel()
    
    
  • 相关阅读:
    【Java 基础篇】自如应对文本数据:Java缓冲字符流详解
    springsecurity框架笔记
    【AGC】通过AGC认证服务在Android平台实现华为账号登录功能
    UNIX 线程相关知识体系
    Linux的Jdk安装教程
    let、var、const 的区别
    形态学 - 提取连通分量
    基于单片机的停车场车位管理系统设计
    贪吃蛇项目实践!(下)
    PYQT常用组件--方法汇总
  • 原文地址:https://blog.csdn.net/stone_tomcate/article/details/132673778