我想用几个x值运行此代码,并将所有输出显示在列表中。第一次运行x应该为1,下一次循环x应该为2,然后是3,依此类推...在我的代码中是否有实现此目标的简单方法?
编辑:添加后,循环现在可以正常工作
对于x范围为(1,max_value)的
有没有办法列出每个循环的自由度输出列表?
import numpy as np
import math
from scipy.stats import skew, kurtosis, kurtosistest
import matplotlib.pyplot as plt
from scipy.stats import norm,t
import pandas as pd
data = pd.read_excel(r"filename.xlsx",sheet_name,skiprows=x+5,usecols="C")
ret = np.array(data.values)
from scipy.stats import skew, kurtosis
X = np.random.randn(10000000)
print(skew(X))
print(kurtosis(X, fisher=False))
# N(x; mu, sig) best fit (finding: mu, stdev)
mu_norm, sig_norm = norm.fit(ret)
dx = 0.0001 # resolution
x = np.arange(-0.1, 0.1, dx)
pdf = norm.pdf(x, mu_norm, sig_norm)
print("Integral norm.pdf(x; mu_norm, sig_norm) dx = %.2f" % (np.sum(pdf*dx)))
print("Sample mean = %.5f" % mu_norm)
print("Sample stdev = %.5f" % sig_norm)
print()
df = pd.DataFrame(ret)
# Student t best fit (finding: nu)
x = t.fit(ret)
nu, mu_t, sig_t = x
pdf2 = t.pdf(x, nu, mu_t, sig_t)
print("Integral t.pdf(x; mu, sig) dx = %.2f" % (np.sum(pdf2*dx)))
print("nu = %.2f" % nu)
print()
答案 0 :(得分:0)
将整个代码放入for
循环中,该循环每次递增x
。
for x in range(1, max_value):
#do stuff
#add value to a list
print(your_list)
旁注:也许在所有脚本开始之前在开始时添加所有导入
编辑x2 :由于x
被覆盖,因此
my_list = []
for my_var in range(1, max_value):
x = my_var
#do stuff with x
#add value to a list
my_list.append(x)
print(my_list)
答案 1 :(得分:0)
您可以使用for循环:
for x in range(n):
f(x)
将在x = 0,x = 1到x = n-1的情况下调用x上的函数f。