お世話になります。rolling関数を利用して、電圧離散データから実効値を求めることを考えております。
離散データから以下の式を用いて、実効値を得ることができます。
●rms値=√(1/N*Σ(yi)^2) N:1周期のデータの個数、yi:i番目のデータ、Σ:i=1からNまでの和
そこで質問なのですが1周期分のNに対して、上手に求める方法をご教示願いたいです。
現在は、データから1周期分の個数を見つけてコードに直接入力をしているのですが、刻み幅が変わると一から見直す必要があります。
以下、ザックリですが使用しているコードです。
よろしくお願いいたします。
pyhton
1import pandas as pd 2import numpy as np 3 4df=pd.DataFrame(columns=["t","V","VV","Varms"]) 5t=np.arange(0,70000,0.1) 6V=np.sin(t) #電圧離散値(sinカーブ) 7 8VV=V**2 #二乗 9 10df["t"]=t.tolist() #変換 11df["V"]=V.tolist() #変換 12df["VV"]=VV.tolist() #変換 13 14df["Vrms"]=(df["VV"].rolling(62).sum()/62)**0.5 #離散値から実効値変換 62という数字は1周期分の個数
回答2件
あなたの回答
tips
プレビュー