filtfiltの動作する方向について
    11 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Sho
 el 15 de Ag. de 2023
  
    
    
    
    
    Editada: Hernia Baby
      
 el 20 de Ag. de 2023
            filtfiltの動作する方向について質問です.
data.matのように各列ごと,時系列データが保存されています.
このデータを各列ごとにフィルタ処理したいと考えております.質問は下記2点です.
・filtfiltでのフィルター処理は行方向,列方向,どちらの方向に動作してますでしょうか?
・もし行方向に動作しているとしたら,列方向に動作させる方法はございますでしょうか?
ご回答どうぞよろしくお願いいたします.
load data.mat
sampling_rate = 200;
cutoff_frequency = 12;
filter_order = 4;
[b, a] = butter(filter_order, cutoff_frequency / (0.5.*sampling_rate), 'low');
filt_data = [data(:,1:2) filtfilt(b, a, data(:,3:end))]
0 comentarios
Respuesta aceptada
  Hernia Baby
      
 el 20 de Ag. de 2023
        海外でも同じような質問来てましたね
動作する方向について
ドキュメントにもあるように
関数は、x が行ベクトルでなければ、x の最初の配列次元に沿って動作します。x が行ベクトルである場合は、2 番目の次元に沿って動作します。
つまり、行方向にフィルタがかかっています。
列方向に動作させる方法
これは転置を使えば解決します。
transpose, .' をご参考ください。
a = [1,2;3,4]
b = a'
2 comentarios
  Hernia Baby
      
 el 20 de Ag. de 2023
				
      Editada: Hernia Baby
      
 el 20 de Ag. de 2023
  
			よく見たらご本人様でしたね。
ご理解の通り、基本は各列ベクトルにかかってるみたいです。
行ベクトルのときのみ、列方向にフィルタがかかります。
他の関数であればオプションに方向を決めるものがあるのですが、この関数にはありません。ですので転置などで入力値を変換する必要があります。
Más respuestas (0)
Ver también
Categorías
				Más información sobre デジタル フィルター処理 en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
