使用Python处理中国地面气候资料日值数据集(V3.0)【教程】

提取txt文件中相同站点数据,将数据按文件顺序按列追加写入 Excel 中, Excel 文件名为站点编号

import os
import pandas as pd

# 定义目录和文件路径
directory = r'G:\EVP'
output_directory = r'G:\datasets0'

# 循环遍历目录下的所有文件
for filename in os.listdir(directory):
    if filename.endswith(".TXT"):
        file_path = os.path.join(directory, filename)
        # 读取文件的第一列数字编号
        with open(file_path, 'r') as file:
            first_column = file.readline().strip().split()[0]  # 假设编号在第一列并且以空格分隔

        # 写入数据到 Excel
        output_filename = os.path.join(output_directory, f"{first_column}.xlsx")
        if os.path.exists(output_filename):
            # 如果文件已存在,则将数据追加到现有的Excel文件中
            existing_data = pd.read_excel(output_filename)
        else:
            # 如果文件不存在,则创建新的Excel文件并写入数据
            existing_data = pd.DataFrame()

        # 读取数据并写入 Excel
        with open(file_path, 'r') as file:
            lines = file.readlines()
            for i, line in enumerate(lines):
                columns = line.strip().split()
                if len(existing_data) < len(columns):
                    existing_data = existing_data.reindex(columns=[f'Column_{i + 1}' for i in range(len(columns))])
                existing_data.loc[len(existing_data)] = columns

        # 将数据写入 Excel 文件
        existing_data.to_excel(output_filename, index=False)

print("数据提取并写入Excel文件完成!")

作者:太阳哇

物联沃分享整理
物联沃-IOTWORD物联网 » 使用Python处理中国地面气候资料日值数据集(V3.0)【教程】

发表回复