私はここにいくつか問題があります。私のコードを見てください。私はコードの何が間違っているのか分かりません。それは簡単ですが、結果は私を混乱させています。私は以下のコードを添付しました。いくつかの関数を使用した結果、Pythonの結果と混乱しました
コードは、私はちょうどメイン機能で「S」の機能を削除しながら、しかし、「S」関数の後、変数「BB」上のデータは、私はちょうど同じことを印刷していても異なっていた作品import numpy as np
import matplotlib.pyplot as plt
def S(xc):
N=len(xc)
r=0.0
s=0.0
# calculation quartile
for m in range(0,N-1):
for n in range(m+1,N):
if (xc[m] > xc[n]):
q=xc[m]
xc[m]=xc[n]
xc[n]=q
if (N % 4 < 2):
q=(xc[N-N/4-1] + xc[N-N/4])*0.5-(xc[N/4-1]+xc[N/4])*0.5
else:
q=xc[N-N/4-1]-xc[N/4]
#calculation standard deviation
for m in range(0,N):
r+=xc[m]
s+=xc[m]*xc[m]
r=np.sqrt(s/N-(r/N)*(r/N))
#calculation
if (q<r):
s=q
else:
s=r
hasil=0.9*(s/1.34)*pow(N,-0.2)
return hasil
fc=0.3
fm=0.02
mu=1
Nsim=10
bb=[]
for nn in range(0,Nsim):
bb.append((1+(mu*np.cos(2*np.pi*fm*nn)))*np.cos(2*np.pi*fc*nn))
print bb
print S(bb)
print bb
変数。私は何が起こったのか分からない。
ご協力いただきありがとうございます。おかげでたくさんの
アルビン
この関数では、 'xc [n] = q' ...のように配列に値を代入した後、なぜ驚いたのですか? – alfasin