gpt4 book ai didi

matlab - 使用指定的 mu 和 sigma 的 Z 分数

转载 作者:行者123 更新时间:2023-11-30 09:38:23 26 4
gpt4 key购买 nike

我已将训练数据矩阵转换为 z-scores对于每一列。我对 zscore 的输出中的每一列都有 musigma .

我还有另一个矩阵(我的测试数据),我想使用获得的 musigma 将其转换为 z-scores在前面的步骤中。我的实现使用 for 循环,如下所示:

TEST_DATA = zeros(num_rows,num_cols,'double');

for rowIdx = 1:num_rows,
for colIdx = 1:num_cols,
TEST_DATA(rowIdx,colIdx)=(input(rowIdx,colIdx)-MU(colIdx))/SIGMA(colIdx);
end
end

在 MATLAB 中是否有更快的方法来实现这一目标?

最佳答案

您可以使用bsxfun :

%// Sample data
matrix = rand(10, 10);
testData = rand(10, 10);

%// Obtain mu and sigma
mu = mean(matrix, 1);
sigma = std(matrix, [], 1);
%// or use: [Z, mu, sigma] = zscore(matrix);

%// Convert into z-scores using precalculated mu and sigma
C = bsxfun(@rdivide, bsxfun(@minus, testData, mu), sigma);

关于matlab - 使用指定的 mu 和 sigma 的 Z 分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18744325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com