簡體   English   中英

將while循環結果保存為python中的numpy數組?

[英]Save while loop results as numpy array in python?

在編碼方面相當新,我正在使用 python 進行蒙特卡洛模擬。 不太確定我會如何 go 對此,最終結果將是繪制出穩態 function 的結果。

import random
import numpy as np

def steadystate():
    p=0.88
    Cout=4700000000
    LambdaAER=0.72
    Vol=44.5
    Depo=0.42
    Uptime=0.1
    Effic=0.38
    Recirc=4.3
    x = random.randint(86900000,2230000000000)
    conc = ((p*Cout*LambdaAER)+(x/Vol))/(LambdaAER+Depo+(Uptime*Effic*Recirc))
    return conc

x = 0
while x < 10000:
    result = steadystate()
    print(result)
    x+=1

現在我只想將 while 循環的結果保存為一個數組,以便我可以繪制它。 我試過附加它但它不會打印任何東西。

實現所需功能的最簡單方法是生成隨機整數作為數組開始,例如:

size = 10000

# generate 10000 (size) random integers as a numpy array
x = np.random.randint(86900000, 2230000000000, size=size)

p = 0.88
Cout = 4700000000
LambdaAER = 0.72
Vol = 44.5
Depo = 0.42
Uptime = 0.1
Effic = 0.38
Recirc = 4.3

result = ((p*Cout*LambdaAER)+(x/Vol))/(LambdaAER+Depo+(Uptime*Effic*Recirc))

result object 也將是與x大小相同的 numpy 數組。

您可以使用 numpy.append() function 到 append while 循環的結果到現有的 numpy 數組。

import numpy as np

# Initialize empty numpy array
arr = np.array([])

# While loop
i = 0
while i < 5:
    # Append loop results to arr
    arr = np.append(arr, [i])
    i += 1
    
# Print resulting array
print(arr)

# Output: [0. 1. 2. 3. 4.]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM