gpt4 book ai didi

python - NumPy 映射 : "ValueError: Size of available data is not a multiple of data-type size."

转载 作者:行者123 更新时间:2023-11-28 22:00:13 25 4
gpt4 key购买 nike

我正在尝试将数据从“data.txt”获取到一个 numpy 数组中,并使用 matplotlib 绘制它。这是每行数据的样子:

“1”11.658870417634 4.8159509459201

大约有一千万行。

我试图将它放入内存映射中,但不断出现此错误:

ValueError: Size of available data is not a multiple of data-type size.

这是我使用的代码:

import numpy
import matplotlib

matplotlib.use('Agg')
import matplotlib.pyplot as plt

datatype=[('index',numpy.int), ('floati',numpy.float32), ('floatq',numpy.float32)]
filename='data.txt'

def main():
data = numpy.memmap(filename, datatype, 'r')
plt.plot(data['floati'],data['floatq'],'r,')
plt.grid(True)
plt.title("Signal-Diagram")
plt.xlabel("Sample")
plt.ylabel("In-Phase")
plt.savefig('foo2.png')

if __name__ == "__main__":
main()

如果你能帮我找出我哪里出错了,我将不胜感激。

最佳答案

那是文本文件,不是二进制文件。 memmap 仅在数据存储为二进制时有效(即存储为数组将存储在内存中)。

您可以通过逐行读取文件并将转换后的每一行存储在可写的 memmap 中来将文件转换为二进制文件。

关于python - NumPy 映射 : "ValueError: Size of available data is not a multiple of data-type size.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15303087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com