读取csv数据并转为二维数组

首先我csv文件中数据如上,是个25*4的数据。

现在需要读取,并将其转化为二维数组,方便后续操作。

import csv
with open('q_table.csv', 'r') as file:
    csv_reader = csv.reader(file)
    data_array = []
    for row in csv_reader:
        data_array.append(row)

print(type(data_array))
print(data_array)

 这里使用csv模块。

运行结果如下

import csv
def read_csv_to_array(file):
    with open(file, 'r') as file:
        csv_reader = csv.reader(file)
        data_array = []
        for row in csv_reader:
            data_array.append(row)
    return data_array
file = 'q_table.csv'
a = read_csv_to_array(file)
print(a)

 封装成函数后,以后就可以直接调用。

注意:上面内容读取出来的数据类型是str字符串。如果你需要转换成int类型,你可以如下。

import csv
def read_csv_to_array(file):
    with open(file, 'r') as file:
        csv_reader = csv.reader(file)
        data_array = []
        for row in csv_reader:
            row = [float(value) for value in row]  # 转换为浮点数类型
            data_array.append(row)
    return data_array

file = 'q_table.csv'
a = read_csv_to_array(file)

通过使用一个列表解释式,将每行元素每个数据都转化为浮点数类型。

row = [float(value) for value in row]  # 转换为浮点数类型

当然,你最好使用numpy,将最后返回的数组通过numpy.array进行格式转换一下,方便后续调用。

import csv
import numpy as np
def read_csv_to_array(file):
    with open(file, 'r') as file:
        csv_reader = csv.reader(file)
        data_array = []
        for row in csv_reader:
            row = [float(value) for value in row]  # 转换为浮点数类型
            data_array.append(row)
    return np.array(data_array)

相关推荐

  1. 读取CSV数据写入MySQL

    2024-02-11 15:22:01       23 阅读
  2. 数组调整

    2024-02-11 15:22:01       38 阅读
  3. 数组案例

    2024-02-11 15:22:01       13 阅读
  4. C# —— 数组

    2024-02-11 15:22:01       9 阅读
  5. PHP多数组数据存储和读取

    2024-02-11 15:22:01       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-11 15:22:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-11 15:22:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-11 15:22:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-11 15:22:01       20 阅读

热门阅读

  1. Chapter 8 - 10. Congestion Management in TCP Storage Networks

    2024-02-11 15:22:01       29 阅读
  2. Linux 文件管理精粹:掌握 cp 命令的艺术

    2024-02-11 15:22:01       28 阅读
  3. 我的大数据之路 - 转岗半年的记录

    2024-02-11 15:22:01       35 阅读
  4. 记录下我遇过的问题

    2024-02-11 15:22:01       36 阅读
  5. leetcode 234 回文链表

    2024-02-11 15:22:01       30 阅读
  6. 2024.2.6

    2024.2.6

    2024-02-11 15:22:01      29 阅读
  7. 【Spring和Spring Boot的区别——详细讲解】

    2024-02-11 15:22:01       31 阅读
  8. golang 集成sentry:PostgreSQL

    2024-02-11 15:22:01       27 阅读
  9. Spring Boot动态加载Jar包与动态配置技术探究

    2024-02-11 15:22:01       30 阅读