使用CSV模块读取CSV文件--含代码

简介: 使用CSV模块读取CSV文件--含代码

使用CSV某块读取CSV文件

` CSV文件开头有多行说明,有汉字,有效数据是ASCII,直接读取时数据无法被代码使用

导入模块:

import os # 用于遍历目录中的文件。
import numpy as np # 用于处理 numpy 矩阵(虽然在这个示例中主要用 pandas)。
import matplotlib.pyplot as plt # 用于画图,本文未使用

读取单个CSV文件

定义 read_csv_to_numpy_matrix 函数:

  • file_path 是单个 CSV 文件的完整路径。
  • start_row 从指定行开始读取。

初始化列表:

data = [] 用于存储单个 CSV 文件的数据矩阵。

打开文件、关闭文件

with open(file_path, mode='r', newline='', encoding='utf-8') as file:
file.close()

读取文件

csv_reader = csv.reader(file)

跳过标题行

header = next(csv_reader)

读取指定行的内容

for current_row, row in enumerate(csv_reader, start=1):
    if current_row >= start_row: # 从指定行开始读取数据
        data.append([float(x) for x in row])

将数据转换为 numpy 矩阵

matrix = np.array(data)

返回数据

return matrix

读取目录下所有CSV文件

定义 read_csv_files_to_dict 函数:

  • directory_path 是包含 CSV 文件的目录路径。
  • start_row 从指定行开始读取。

初始化字典:

matrices = {} 用于存储每个 CSV 文件的数据矩阵。

遍历目录中的文件:

使用 os.listdir(directory_path) 获取目录中的所有文件。

检查文件名是否以 .csv 结尾。

读取和处理 CSV 文件:

使用 read_csv_to_numpy_matrix(file_path, start_row) 读取 CSV 文件到 DataFrame。

存储矩阵到字典:

将矩阵放入 matrices 字典中,键为文件名。

返回字典:

函数返回包含所有 CSV 文件数据矩阵的字典。

示例用法:

调用 read_csv_files_to_dict 函数,并将结果存储在 csv_matrices 变量中。

遍历字典并打印每个文件名及其对应的 numpy 矩阵。

注意事项

字典中的键是文件名(包括扩展名)。如果你希望不包括扩展名,可以在存储到字典时进行相应处理。

完整代码

python读取csv文件及读取多个文件,将字符串转成numpy

相关文章
|
4月前
|
Java Apache
导出csv格式的文件
导出csv格式的文件
39 0
|
4月前
|
关系型数据库 大数据 Python
如何快速创建千万行CSV 数据?
如何快速创建千万行CSV 数据?
122 0
|
数据处理
R|批量循环处理同一格式文件-csv,txt,excel
R|批量循环处理同一格式文件-csv,txt,excel
|
数据处理 Python
多线程操作CSV文件并且将CSV文件转成XLSX文件
多线程操作CSV文件并且将CSV文件转成XLSX文件
200 0
|
存储 数据挖掘 数据库
|
数据采集 Python
Pandas 合并多个 (300多个) Excel 文件,并输出为 CSV 文件
Pandas 合并多个 (300多个) Excel 文件,并输出为 CSV 文件
|
存储 数据格式 索引
【python基础教程】csv文件的写入与读取
CSV (Comma Separated Values),即逗号分隔值(也称字符分隔值,因为分隔符可以不是逗号),是一种常用的文本格式,用以存储表格数据,包括数字或者字符。很多程序在处理数据时都会碰到csv这种格式的文件。python自带了csv模块,专门用于处理csv文件的读取
327 0
【python基础教程】csv文件的写入与读取
|
关系型数据库 数据库 PostgreSQL
导出CSV文件
导出CSV文件
360 0
C#读取CSV
public class CSVFileHelper { /// /// 将DataTable中数据写入到CSV文件中 /// /// 提供保存数据的DataTable /// CSV的文件路径 public static voi...
2139 0
|
关系型数据库 MySQL 中间件
Hyperf结合PhpOffice/PhpSpreadsheet实现Excel&CSV文件导出导入
Hyperf结合PhpOffice/PhpSpreadsheet实现Excel&CSV文件导出导入。PhpSpreadsheet是一个用纯PHP编写的库,它提供了一组类,允许您读取和写入各种电子表格文
953 0
Hyperf结合PhpOffice/PhpSpreadsheet实现Excel&CSV文件导出导入