【python】:如何把csv文件做成一个变量?

试想,一个项目的测试用例,对应多个csv文件。但是这种方法只能读取到指定的一个Address.csv文件,怎么办?
--------把Address.csv做成一个变量。接受一个文件名,通过文件名找文件。

完整代码:

#coding=utf-8
import csv
import os

def read(filename):
    base_path=os.path.dirname(__file__) # 获取当前文件目录
    path=base_path.replace('py_file','data/'+filename)# 目录替换

    with open(path) as file:
        data=csv.reader(file)
        list=[]
        i=0
        for row in data:
            if i==0:
                pass
            else:
                list.append(row)
            i=i+1
    return list
if __name__ == '__main__':# main以下的代码只会在当前文件中执行,不可被其他的方法调用
    list=read("Address.csv")
    print(list)

### Python CSV 数据预处理方法教程 #### 导入必要的库 在进行CSV数据预处理之前,需要先导入一些常用的Python库。Pandas 是最常用于数据操作和分析的库之一,而 NumPy 则提供了强大的数计算能力。 ```python import pandas as pd import numpy as np from sklearn.preprocessing import StandardScaler, MinMaxScaler ``` #### 加载CSV文件 加载CSV文件可以通过 `pd.read_csv()` 函数实现。此函数可以指定路径并文件内容到 DataFrame 中[^1]。 ```python df = pd.read_csv('path_to_your_file.csv') ``` 如果遇到 Excel 文件,则可使用 `pd.read_excel()` 方法来替代[^2]: ```python df = pd.read_excel('path_to_your_excel_file.xlsx') ``` #### 查看数据基本信息 为了了解数据集的整体结构以及是否存在缺失等问题,可以调用 `info()` 和 `describe()` 方法。`info()` 提供每列的数据类型及其非空数量的信息;`describe()` 给出统计摘要,如均、标准差等[^3]。 ```python print(df.info()) print(df.describe()) ``` #### 处理缺失 对于含有缺失的情况,可以选择填充或者删除这些记录。以下是两种常见的策略: - 使用平均数/中位数填补连续型变量; - 删除含大量缺失项的样本或特征。 ```python # 填充缺失 (以某一特定列为例) df['column_name'].fillna(value=df['column_name'].mean(), inplace=True) # 或者直接丢弃有缺失的行 df.dropna(inplace=True) ``` #### 特征缩放与标准化 许多机器学习模型假设输入特性具有相似尺度。如果不做任何调整,某些算法可能会偏向于那些范围较大的属性。为此,推荐采用标准化技术使各维度处于同一量级下[^4]。 ##### Z-Score 标准化 Z-Score 将原始分数转换成标准正态分布下的新得分形式。 ```python scaler = StandardScaler() scaled_features = scaler.fit_transform(df[['numeric_column']]) df['normalized_numeric'] = scaled_features ``` ##### 归一化 另一种方式是将所有数映射至 `[0, 1]` 范围之间。 ```python minmax_scaler = MinMaxScaler() norm_features = minmax_scaler.fit_transform(df[['another_numeric_col']]) df['normalized_another'] = norm_features ``` #### 编码分类变量 当存在类别型字段时,需将其转化为适合建模的形式。一种简单的方法就是运用 One-Hot Encoding 技术。 ```python one_hot_encoded_df = pd.get_dummies(df, columns=['categorical_feature']) ``` 以上即为完整的基于 Pandas 的 CSV 数据预处理流程概述。实际应用过程中可能还需要针对具体业务场景做出更多定制化的修改。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值