""" pg_request包,主要用于处理PostgreSQL数据库数据。 功能: - 在运行主函数时,如果必要,将会创建一个存放输出数据的 'data' 文件夹。 - 连接到 PostgreSQL 数据库并从指定数据表中提取数据。 - 合并多个表中的数据。 - 对数据进行标准化处理。 - 保存处理后的数据到 CSV 文件。 模块: - config: 定义了数据的存取参数,如数据库连接参数和目标数据表名。 - parse: 包含了连接数据库、数据处理和数据存储等功能的函数。 函数: - check_and_create_folder(folder_path): 检查并创建数据文件夹,在主函数运行时调用。 - run(): 作为整个数据处理流程的主函数,当被调用时,将会执行数据提取、数据处理和数据存储等操作。 使用示例: ``` from pg_request import run run() ``` 注意事项: 在使用这个包时,你需要首先在config.py中设置好数据库连接参数和目标数据表,然后才能正常使用run函数。在你自己的项目中,你也可以根据需要调用parse.py中的各个函数。 """ import os from .config import DB_PARAMS, TABLES from .parse import connect_to_pg, merge_dfs, normalize_df, save_as_csv def check_and_create_folder(folder_path: str): """ 检查指定的文件夹是否存在,如果不存在则创建该文件夹。 Args: folder_path (str): 需要检查和创建的文件夹路径。 """ if not os.path.exists(folder_path): os.makedirs(folder_path) print(f"文件夹 {folder_path} 已创建。") else: print(f"文件夹 {folder_path} 已存在。") def run(): """ 运行整个数据处理流程,步骤如下: 1. 检查并创建存放输出数据的data文件夹。 2. 连接到PostgreSQL数据库并获取指定数据表的数据。 3. 合并多个数据表中的数据。 4. 使用最小最大规范化方法对数据进行规范化处理。 5. 将处理后的数据保存到CSV文件中。 """ # 检查存放输出数据的文件夹是否存在,如果不存在则创建 check_and_create_folder('data') # 连接数据库,获取数据表数据 raw_data = connect_to_pg(DB_PARAMS, TABLES) # 合并获取的数据表 merged_data = merge_dfs(raw_data) # 对合并后的数据进行最小最大标准化 normalized_data = normalize_df(merged_data) # 保存数据到 CSV 文件 save_as_csv(normalized_data, 'data/normalized_df.csv') # 打印完成信息 print('{:*^30}'.format('PostgreSQL数据读取完成'))