Help, I need to know how to build a dataset. I have 7 txt file of bearing raw vibration generated. If can I need step by step. Already three days search.

6 views (last 30 days)
Here attached with all raw vibration data mentioned above.
  2 Comments
William Rose
William Rose on 8 May 2024
I looked at the contents of the seven files you uploaded. Each file has two columns of numbers, and no labels. Column 1 appears to be time. The sampling rate is 1000 Hz for all seven files. The duration is 1 second for 4 files, and 10 seconds for 3 files. I assume column 2 is a measure of vibration, such as force or displacement or acceleration.
The file names indicate the seven recordings are made under seven distinct conditions. Please explain how you plan to analyze the seven recordings, and what information you plan to obtain from the database. I am asking because the structure of the database should be related to the intended use of the database.
What do you want to do with this data?
Rusyaidi Yusri
Rusyaidi Yusri on 11 May 2024
Moved: Voss on 11 May 2024
Hi, I need to make it as trained dataset for supervised model. But I lack of knowldge, how to do that.

Sign in to comment.

Accepted Answer

Tejas
Tejas on 23 May 2024
Hi Rusyaidi,
In supervised learning, models require the provision of expected values or classes alongside the data entries they will predict on. Therefore, one way to create a training dataset from the provided text files is to assign all entries within a text file to a specific class. Here is a step-by-step procedure to accomplish this:
  • Begin by loading the contents of the text files
data = cell(7, 1);
fileNames = {'bearing_defect_ball.txt', 'bearing_defect_on_Retainer.txt'...
'bearing_defect_Outer_Race_vibration.txt','bearing_vibration_defect_on_seal.txt',...
'bearing_vibration_defect_on_shield.txt', 'defective_Inner_Race_vibration.txt',...
'Normal_bearing_condition_raw_data.txt'};
for i = 1:6
data{i} = readtable(fileNames{i}, 'Format', '%f%f', 'ReadVariableNames', false);
end
data{7} = readtable(fileNames{7}, 'HeaderLines', 1);
  • Next, add an extra column to dataset. This column should indicate the class to which each entry belongs.
class = {'class_1','class_2','class_3','class_4','class_5', 'class_6','class_7'};
for i = 1:7
data{i}.Condition = repmat(class(i), height(data{i}), 1);
end
dataSet = vertcat(data{:});
cv = cvpartition(height(dataSet), 'HoldOut', 0.3);
trainData = dataSet(training(cv), :);
testData = dataSet(test(cv), :);
model = fitctree(trainData(:, {'Var1', 'Var2'}), trainData.Condition);
This method represents one of several approaches to constructing a training dataset for supervised models. The final structure of the training dataset will be determined by the intended use of the data contained in the text files.

More Answers (0)

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!