Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python np.append后numpy数组的字节大小大幅增加_Python_Python 3.x_Numpy - Fatal编程技术网

Python np.append后numpy数组的字节大小大幅增加

Python np.append后numpy数组的字节大小大幅增加,python,python-3.x,numpy,Python,Python 3.x,Numpy,我有两个numpy数组data和header,它们是从一系列文本文件生成的数据.shape=(96170001)和标题.shape=(70001,)数据是一个浮点数组,头是一个短字符串数组,最长的是“R#70000” 我想将数据附加到标题的末尾。为了使形状匹配,我做了 header.reshape(-1,1).transpose() ! produces shape (1,700001) 在追加之前,data.nbytes=513MB,header.nbytes=1.86MB,并

我有两个numpy数组
data
header
,它们是从一系列文本文件生成的<代码>数据.shape=
(96170001)
标题.shape
=
(70001,)
<代码>数据是一个浮点数组,
是一个短字符串数组,最长的是
“R#70000”

我想将
数据
附加到
标题
的末尾。为了使形状匹配,我做了

header.reshape(-1,1).transpose()        ! produces shape (1,700001)
在追加之前,
data.nbytes=513MB
header.nbytes=1.86MB
,并且重新整形的头大小为1.9MB。我执行追加操作:

data = np.append(header.reshape(-1,1).transpose(),data, axis=0)
此时,data.shape
=
(96270001)
与预期一致,但大小已飙升至8200 MB


是什么导致了大规模的大小增加?

是否有可能
numpy
现在将“数据”中的所有值从
float
转换为
string
,以将它们放在一个数组中,导致它们使用更多的内存?首先将字符串头添加到实际数据中是否真的有意义?你想要实现什么?之后很难“处理”数据,如果只是为了写入文件,还有其他方法。(仍然是一个有趣的问题。)@Aryerez,在append
header.dtype之前=