matlab中怎樣對資料進行重取樣

2021-07-01 01:34:59 字數 1700 閱讀 9754

1樓:匿名使用者

呼叫函式resample()就可以了

resample為訊號降取樣處理,理解如下:

b=resample(x,90,250); %取樣從250hz降到90hz,如果250在前,就是插值從90到250,可以看b的長度,250hz取樣4000個資料等於90hz取樣1440個資料,這就是降取樣。

2樓:day忘不掉的痛

程式由三部分組成,main.m主程式,負責處理資料,readdata.m負責讀取資料,writedata.m負責將處理好的資料寫成檔案。

main.m

clear

dirs=dir('f:\matlab\impact\*.txt');

dircell=struct2cell(dirs)';

filenames=dircell(:,1);

filenum=size(filenames);

filenumrow=filenum(1);

for num=1:filenumrow

filenametemp=filenames(num);

y=readdata(filenametemp);

%卷積x=filter(ones(1,50),50,y(:,[2:5]));

y=[y(:,[1]) x];

%首行標示

y(1,:)=1:5;

demensiony=size(y);

y_rows=demensiony(1);

converted_y=zeros(1,5);

j=0;

for i=1:10:y_rows

j=j+1;

converted_y(j,:)=y(i,:);

end%converted_y

writedata(converted_y,filenametemp);

endreaddata.m

function y=readdata(filename)

%c(10:14)=file1;

%c(15:18)='.txt';

fid=fopen(filename,'r');

[a,num]=fscanf(fid,'%f',[5,inf]);

fclose(fid);

a=a';

y=a;

writedata.m

function writedata(writeddata,filename)

filenames=strcat(['result_',filename]);

fid=fopen(filenames,'w');

%fprintf(fid,'%f %f %f %f\n',writeddata');

fprintf(fid,'%f %f %f %f %f\n',writeddata');

fclose(fid);

3樓:匿名使用者

呼叫函式resample()就可以了

4樓:

resample函式,help一下,有詳細介紹。

matlab 中要對一列資料進行n次抽樣,該怎麼寫程式,是要用到哪個函式嗎?謝謝!

5樓:匿名使用者

假設資料是a

只要b=a(1:n:end);

就可以每隔n個資料抽取一次樣品資料

資料庫管理系統能對資料庫中的資料進行查詢 插入 修改和刪除等操作,這種功能稱為

是操縱功能,即select,insert,update,delete屬於dml資料操縱語言。所以選d 以上為資料庫操作行為,屬於資料庫管理功能,因此選c 選d,資料操縱功能。原因如下 1 資料定義功能 資料描述語言 ddl data definition language,使用者可通過它來定義資料物...

隨機森林中是怎麼對資料進行隨機選擇的

首先用bootstrap自主 抄取樣法取樣與樣本數襲相同數目的樣本,作為訓練集,剩下的沒有被取樣過的樣本作為測試集 對特徵做取樣,比如d個特徵採log2 d 個特徵,用採到的樣本和特徵做一棵決策樹 重複步驟1 2做多棵不同的決策樹構成隨機森林 隨機森林中是怎麼對資料進行隨機選擇的 對於n個樣本資料,...

利用spss對資料進行了相關性分析後,再進行主成分分析呢還要回歸分析

這個要你的研究目的的啊 一般做了相關,也要做迴歸分析的 統計專業,為您服務 這是看你的分析目的是什麼,不是看資料。spss經過主成分分析後,得出3個因子,怎麼利用這幾個因子進行後續的迴歸分析。1.spss直接幫你把幾個因子都已經算出來了,就是fac1 1列就是因子f1,同理可以得知f2,f3.不用算...