我有一些关于PL/SQL上下文的疑问,有:
谢谢.
我试图理解Matlab中的主成分分析,
似乎至少有3种不同的功能可以做到这一点.
我在下面的代码中有一些问题:
我x是否正确使用一个特征向量(对应于最大特征值的特征向量)创建近似值?我认同??
为什么PC和V哪些都是(x'x)表示不同的载荷?列顺序是相反的,因为eig不会首先排序具有最大值的特征值,但为什么它们彼此为负?
为什么这些eig值不是与特征向量一致的,与第一列中最大的特征值相对应?
使用下面的代码,我回到输入矩阵x使用时svd和eig,但是从princomp的结果似乎是完全不同的?我需要做些什么来使princomp与其他两个函数相匹配?
码:
x=[1 2;3 4;5 6;7 8 ]
econFlag=0;
[U,sigma,V] = svd(x,econFlag);%[U,sigma,coeff] = svd(z,econFlag);
U1=U(:,1);
V1=V(:,1);
sigma_partial=sigma(1,1);
score1=U*sigma;
test1=score1*V';
score_partial=U1*sigma_partial;
test1_partial=score_partial*V1';
[PC, D] = eig(x'*x)
score2=x*PC;
test2=score2*PC';
PC1=PC(:,2);
score2_partial=x*PC1;
test2_partial=score2_partial*PC1';
[o1 o2 o3]=princomp(x);
Run Code Online (Sandbox Code Playgroud) 我有37个线性方程和36个变量的矩阵方程; A*X = B. 方程没有确切的答案.我想使用Matlab最小二乘法找到误差最小的答案.我是Matlab的新手,所以任何评论都会有所帮助.谢谢
编辑:问题是,即使指定输入的精度,matlab仍会将它们转换为双精度,除非您另行指定.我的错.
将一个简单的64位整数读入matlab似乎给出了与在python或windows计算器中进行转换时不同的值.
我有一个小文件,长度为8个字节,其内容为
0x99, 0x1e, 0x6b, 0x40, 0x27, 0xe3, 0x01, 0x56
Run Code Online (Sandbox Code Playgroud)
我在matlab中使用以下内容:
fid = fopen('test.data')
input = fread(fid, 1, 'int64')
Run Code Online (Sandbox Code Playgroud)
我明白了
input = 6197484319962505200
Run Code Online (Sandbox Code Playgroud)
但是,使用python或windows计算器我得到一个不同的十进制表示0x5601e327406b1e99.两者都预测我应该得到
input = 6197484319962504857(这与343不同).它显然不是一个字节序问题,因为它会成为一种方式.
我最初被引导来测试这个,因为从一个大的二进制文件中读取双倍的结果是奇怪的.然后我尝试用整数读取它们并手工比较.
我的问题是,我做错了什么,有什么我忽略的,或者是matlab在这里犯了错误?我正在使用win64 matlab R2010a.
我正在使用Matlab找到Jacobi迭代矩阵的谱半径A=[4 2 1;1 3 1;1 1 4].
我似乎无法输入正确的命令来获得5次迭代后的错误大小.有人能帮我吗?
这是我到目前为止放入Matlab的命令列表:
A=[4 2 1;1 3 1;1 1 4]
A =
4 2 1
1 3 1
1 1 4
D=diagonal(diagonal(A));L=(A,-1);U=(A,1);
b=([3 -1 4])
x0j=zeros([0 0 0]);
x=D\(-(U+L)*x0j+b);r=b-A*x %Jacobi iteration.
------------------------------------------------------------------------------
Error using *
Inputs must be 2-D, o enter code here r at least one input must be scalar.
To compute element wise TIMES, use TIMES (.*) instead.
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用jekyll和创建引用列表jekyll-scholar。有没有办法在CSL样式文件中突出显示(粗体)某个作者的名字?有没有一种更好的方法可以达到相同的效果而无需触碰CSL样式文件?
例如(从此处开始),这将是理想的:
Zelle RM,E.de Hulster,W.Kloezen,JT Pronk和AJA van Maris。2010。在工程酿酒酵母菌株的生物反应器分批培养中生产C4-二羧酸的关键工艺条件。应用 环境。微生物。76:744-750。
雅培DA,Zelle RM,JT Pronk和AJA van Maris。2009。酿酒酵母用于羧酸生产的代谢工程:现状和挑战。FEMS酵母库。9:1123-1136。
Zelle RM,E.de Hulster,WA van Winden,P.de Waard,C.Dijkema,AA Winkler,JA Geertman,JP van Dijken,JT Pronk和AJA van Maris。2008年。酿酒酵母生产苹果酸:丙酮酸羧化,草酰乙酸还原和苹果酸出口的工程设计。应用 环境。微生物。74:2766-2777。
所以在Matlab中我用手写数字执行PCA.基本上,我说30*30维图片,即900像素,我认为在PCA之后捕获大部分方差的组件,比如基于某个阈值的前80个主要组件(PC).现在这些80个PC也是900维度,当我使用imshow绘制这些时,我会得到一些图像,比如看起来像0,6,3,5等等.这些前几个PC的解释是什么?我提取的80)?
matlab pattern-recognition machine-learning principal-components
我刚刚发现当我这样做时
import pygame.joystick
Run Code Online (Sandbox Code Playgroud)
我不仅可以访问joystick,还display可以访问 ,例如我可以
pygame.display.init()
Run Code Online (Sandbox Code Playgroud)
就像我只是简单地导入了pygame.
有什么不同?
我正在开发 VS Code 的扩展。这个扩展对于我在日常工作中使用来说已经足够好了,但还不足以发布。是否有一种规范的方法可以使正在开发的未发布扩展可用于 VS Code?最理想的是,我希望始终保持代码运行的当前状态。
我确实找到了一种似乎可行的方法,但我不确定这是一个可怕的黑客还是可以:在 VS Code 的扩展目录(~/.vscode/extensions在 Linux 上)中创建一个到开发目录的符号链接。有更好的/官方的方法吗?
据我所知,频谱的IFFT幅度部分是偶对称的,而相位部分是奇对称的应该是真实的.
让我们考虑这个例子:
signal_spectrum = [1 2+i 3+2*i 4+8*i 5 4-8*i 3-2*i 2-i 1];
Run Code Online (Sandbox Code Playgroud)
很明显,这个光谱符合我上面列出的两个条件.当我使用Matlab执行IFFT时,我获得:
signal= ifft(signal_spectrum) =
2.7778
0.8003 - 0.2913i
-1.2861 + 1.0792i
0.5218 - 0.9038i
-0.0812 + 0.4604i
0.0976 + 0.5536i
-0.6329 - 1.0962i
1.3343 + 1.1196i
-2.5316 - 0.9214i
Run Code Online (Sandbox Code Playgroud)
获得的信号是复值的.为什么?有什么问题?
我正在尝试创建一个简单的循环,如果必须迭代超过25次,它将退出.
这是我的尝试:
for x = 1 : size(adj, 1)
if x > 25
break
end
% some code here for printing but I've omitted it since not relevant
end
Run Code Online (Sandbox Code Playgroud)
对不起,我试过谷歌搜索它,我不知道为什么它不起作用.
我有这个等式:
I = (I - min(I(:))) / (max(I(:)) - min(I(:)));
Run Code Online (Sandbox Code Playgroud)
在哪里I是矩阵,我知道min(I(:))并分别max(I(:))计算I矩阵的最小和最大元素.
当我做一个随机矩阵rand(5,5)或者randi(5,5)在上面的方程式之前和之后我没有看到任何变化:

但是当我在灰度图像上实现这个方程时,结果是二进制图像:

这里的任何人都能完全解释这个等式吗?
I = (I - min(I(:))) / (max(I(:)) - min(I(:)));
Run Code Online (Sandbox Code Playgroud)