我需要绘制大型示波器数据集。它们太大(1 亿个值),无法将它们全部绘制在 for 循环中。如果我尝试这样做,它会导致MemoryError
. 所以在 Stackoverflow 的帮助下,我想出了一个不漂亮但有效的解决方案。
为了减少要绘制的数据量,我可以删除数据集的所有行,它们的 y 值介于1
和之间-1
。这可以用 pandas 轻松完成:
df
是 pandas.DataFrame() 形式的数据集。
df[1]
是要检查的列。
df.drop(df[(df[1] < 1) & (df[1] > -1)].index, inplace = True)
这导致:
这将数据集的长度从1 亿减少到大约20 万。我的问题是:有没有办法减少数据长度并保持其原始外观(防止丑陋的截断)?
这个堆栈的工作方式似乎与 Stackoverflow 不同。原谅我所有的不法行为。