读取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)

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

knighthood2001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值