• 24小时服务热线:400-088-1128

当前位置 南顺网络>> 知识拓展

Python纯技术————数据写入Excel

条件1.一个你需要处理的文件夹(包含你数据随便什么都可以那是你的Things)


条件2.一个空的文件夹


接下来跟着姐姐敲:(姐姐处理的是气象数据,请各位读者换自己需要处理的数据)


from netCDF4 import Dataset #(这个可以不用哈笔者分析的是气象数据)

import numpy as np

import pandas as pd

import xlsxwriter

import os

#导入有缺失模板的 一言不合就pip install modulename

 

#file_name为写入excel文件的路径,datas为要写入数据列表

def data_write_excel(file_name, time,longitude,latitude,rain):

    workbook = xlsxwriter.Workbook(file_name) #认真读

    workfomat = workbook.add_format({

        'bold': True,  # 字体加粗

        'border': 1,  # 单元格边框宽度

        'align': 'center',  # 对齐方式

        'valign': 'vcenter',  # 字体对齐方式

        # 'fg_color': 'blue',  # 单元格背景颜色

    })

    cellfomat = workbook.add_format({

        'border': 1,  # 单元格边框宽度

        'align': 'center',  # 对齐方式

        'valign': 'vcenter',  # 字体对齐方式

    })

    cellfomatRain = workbook.add_format({

        'align': 'center',  # 对齐方式

        'valign': 'vcenter',  # 字体对齐方式

    })

    time=str(time[0])

    sheet = workbook.add_worksheet(time)

    sheet.set_column(0,len(latitude),20)

    sheet.activate()  # 激活工作表

    sheet.write(0, 0, '横纬竖经',workfomat)  # 行, 列, 值

    count = 1

    #经度数据

    for J in longitude:

        sheet.write(count, 0,str(J),cellfomat)  # 行, 列, 值  ——————竖着的经度

        count=count+1

    count =1

    #维度数据

    for W in latitude:

        sheet.write(0, count,str(W),cellfomat)  # 行, 列, 值  ——————横着的纬度

        count=count+1

    #处理雨水数据

    for data in  rain:

        columnIndex = 1

        for W_rain in data:

            rowIndex = 1

            for J_rain in W_rain:

                singal_rain_data=str(J_rain)

                sheet.write(rowIndex,columnIndex , singal_rain_data,cellfomatRain)  

# 行, 列, 值

                rowIndex=rowIndex+1

            columnIndex = columnIndex + 1

    workbook.close()   #关闭工作表

    print("保存文件成功:"+file_name+"\n"+"............")

 

 

#批量读取数据(请换成读者的数据,小小动一下脑壳,别睁眼当瞎瞎噢!)

fileList = os.listdir("E:\\untitled\\venv\\MERGE") #这个文件夹包含了笔者的数据

for temfile in fileList:

    if temfile.__contains__(".nc"):#这里笔者读取的是.nc 文件 

        nc_file = "E:\\untitled\\venv\\MERGE\\"+temfile

        fh=Dataset(nc_file, mode='r')

        time=fh.variables['time']  

        longitude=fh.variables['longitude']

        latitude=fh.variables['latitude']

        rain=fh.variables['rain']

        file_name=temfile.split('.')[0]

        exportData="E:\\untitled\\venv\ExportData\\"+file_name+".xlsx"

        data_write_excel(exportData,time,longitude,latitude,rain)

        fh.close()

 

当你看到它们一个一个生成的时候,你就入坑了。



————————————————

版权声明:本文为CSDN博主「文三胖」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_35619526/article/details/103620236