1.19

今天由于某种原因,学习了一下python,配置了arcpy包的环境。完成了栅格数据文件的筛选和计算平均值。

# encoding: utf-8
import glob
import os                  #os是用来切换路径和创建文件夹的。
from shutil import copy #shutil 是用来复制黏贴文件的
import arcpy
from arcpy import env
from arcpy.sa import *
file_path = r'D:\GLASS_LAI_8dy_YRB\8dy_YRB'#想拆分的文件夹所在路径,也就是一大堆文件所在的路径
save_dir = r'D:\GLASS_LAI_8dy_YRB\outpath' #save_dir 是想把复制出来的文件存放在的路径
dir_name = "1982" #新的文件夹的命名
file_out_dir = "D:\\GLASS_LAI_8dy_YRB\\8dy_YRB\\"
id_file = file_out_dir + 'GLASS01B02.V40.A1982*'
len_file = len(glob.glob(id_file))
print(len_file)
for file in glob.glob(id_file):
        print(file)


        from_path = os.path.join(file_path, file)  # 旧文件的绝对路径(包含文件的后缀名)
        to_path = save_dir + "\\" + dir_name  # 新文件的绝对路径
        if not os.path.isdir(to_path):  # 如果 to_path 目录不存在,则创建
            os.makedirs(to_path)
        copy(from_path, to_path)  # 完成复制黏贴
# coding=utf-8
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
# 输入工作空间文件夹(即存放需批处理tif影像的文件夹)
env.workspace = "D:/GLASS_LAI_8dy_YRB/outpath/1982" # 注意此处‘/’的方向
# Set local variables
# 遍历工作空间中的tif格式数据
rasters = arcpy.ListRasters("*", "tif")

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# MEAN均值;SUM总和;STD标准差;MINIMUM最小值;MAXIMUM最大值;
outCellStatistics = CellStatistics(rasters, "MEAN", "DATA")
# 输出结果影像的路径和名称
outCellStatistics.save("D:/GLASS_LAI_8dy_YRB/outpath/1982.tif")
print("All project is OK!")

 

posted @ 2024-01-19 19:38  布吉岛???  阅读(11)  评论(0编辑  收藏  举报