TA的每日心情 | 开心 2022-1-21 15:08 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
一张Excel工作表,最多可以包括1048576行和16384列
- d# Z& \) \0 o0 Q6 d
/ R0 o# C; ?" `( G显然如果要导出500万行数据是不行的,你可以采取2楼的说法,重排矩阵;8 Q% a* J0 S- P `1 c' v* v
另外有两种方式供参考:
0 {# j2 p5 ?+ v' C1.导出csv,可以存放500w行数据;; }+ d* c+ }. _1 U" J7 e
2.按规律导出多excel文件,每个文件导出100w行数据。
5 D8 z+ r7 ]9 ?$ B1 i注意:writematrix需要R2019a版本及以上2 B% I( @8 ?$ f# f$ w
n=5000010; c5 s- B- e4 Q
nmax=1048576;
5 {+ r. u! U- UT=[1:n]';
+ r' j# R5 G) s3 _% writematrix(T,'out.xlsx');/ T! c% ?2 Z3 V1 I; N
writematrix(T,'out.csv');
6 _9 n0 m0 R$ t( p) b; [ ]; l( Q, T+ X. t5 y# ~
sub=1000000;
4 e& ]" b: Q2 o7 ~for i=1:ceil(n/sub)
+ R% C& b) o- P8 K4 v7 ~ if i==ceil(n/sub)5 Y; K% \6 K# `' J8 X% b6 r2 |
writematrix(T((sub*(i-1)+1):end),strcat('part',num2str(i),'.xlsx'));$ d' A" ]8 d% K: m2 O8 D k6 b
else, J v1 b. _) d& c
writematrix(T((sub*(i-1)+1):sub*i),strcat('part',num2str(i),'.xlsx'));
/ C3 L: z& L: U5 m end
- [1 _9 m" n) u x2 y2 @" oend |
|