matlab 和python读取csv文件速度_与Matlab相比,Numpy加载csv太慢

我发布这个问题是因为我想知道我是否做了一些非常错误的事情来得到这个结果。

我有一个中等大小的csv文件,我试图使用numpy来加载它。为了演示,我使用python制作了文件:import timeit

import numpy as np

my_data = np.random.rand(1500000, 3)*10

np.savetxt('./test.csv', my_data, delimiter=',', fmt='%.2f')

然后,我尝试了两种方法:numpy.genfromtxt,numpy.loadtxtsetup_stmt = 'import numpy as np'

stmt1 = """\

my_data = np.genfromtxt('./test.csv', delimiter=',')

"""

stmt2 = """\

my_data = np.loadtxt('./test.csv', delimiter=',')

"""

t1 = timeit.timeit(stmt=stmt1, setup=setup_stmt, number=3)

t2 = timeit.timeit(stmt=stmt2, setup=setup_stmt, number=3)

结果表明:t1=32.159652940464184,t2=52.00093725634724

但是,当我尝试使用matlab时:tic

for i = 1:3

my_data = dlmread('./test.csv');

end

toc

结果表明:经过时间3.196465秒。

我知道装载速度可能有一些差异,但是:这比我预料的要多得多

是不是np.loadtxt应该比np.genfromtxt快?

我还没有尝试过python csv模块,因为加载csv文件是我经常做的事情,而且对于csv模块,编码有点冗长。。。但如果这是唯一的办法,我很乐意尝试。现在我更关心的是我是否做错了什么。

如有任何意见,将不胜感激。提前多谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值