如何在python中处理巨型列表/矩阵?(不可分块)

2024-05-29 11:31:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个生成列表的python代码。最后的结果是一个巨大的列表(矩阵),它会导致内存错误。这个列表不是chunckabel,它在到达最后一列之前一直是完整的。你知道吗

以下代码在我的电脑中最多适用于N=15。 我有64位Python。你知道吗

import pandas as pd
import numpy as np
import scipy as sp
#Initial SOC
iSOC=float(50)
#Target SOC
tSOC=float(60)
step1=3.75

def myFunction(base, plus):
#Initialize result array
    result = []
#For Each tuple in entry
    for bas in base:
    #Get Last Element
        lastElem = bas[-1:][0]
    #For Each element to add
        for x in plus:
        # Append a tuple composed of base + sum(lastElement & element to 
        #add)
            result.append(bas + ( (lastElem+x),) )
# Return result
    return result
N=6

df = [(iSOC,)]
for i in range(N):
    add = [step1,0,-step1]
    df=myFunction(df, [step1,0,-step1])

df1=pd.DataFrame(df)
df1

对于N>;15,它给出内存错误。非常感谢您的帮助。你知道吗


Tags: 内存代码inimportadddf列表for

热门问题