我在尝试计算R脚本中100x2矩阵的SVD时得到Error in svd(x, nu = 0L, nv = 0L) : infinite or missing values in 'x'
。有趣的是,在R提示中为完全相同的矩阵做同样的事情是完美的。
这些是数据:
[,1] [,2]
[1,] 5840 5
[2,] 5840 6
[3,] 14600 2
[4,] 5840 5
[5,] 5840 4
[6,] 5840 5
[7,] 14600 5
[8,] 14600 8
[9,] 5840 5
[10,] 262144 11
[11,] 66240 5
[12,] 16560 14
[13,] 5840 5
[14,] 5840 17
[15,] 16560 6
[16,] 5840 7
[17,] 66240 5
[18,] 5840 7
[19,] 33003 7
[20,] 65535 7
[21,] 5840 6
[22,] 65535 7
[23,] 65535 4
[24,] 16560 4
[25,] 5840 4
[26,] 14600 9
[27,] 65535 6
[28,] 14600 8
[29,] 8192 8
[30,] 14600 5
[31,] 14600 5
[32,] 131072 8
[33,] 14600 10
[34,] 14600 5
[35,] 14600 5
[36,] 14600 5
[37,] 14600 5
[38,] 14600 8
[39,] 8192 9
[40,] 8192 16
[41,] 65535 5
[42,] 14600 5
[43,] 6432 5
[44,] 14600 5
[45,] 5840 5
[46,] 14600 5
[47,] 8192 7
[48,] 254992 5
[49,] 14600 6
[50,] 5840 7
[51,] 14600 5
[52,] 5840 6
[53,] 16560 7
[54,] 64860 6
[55,] 14600 5
[56,] 14600 5
[57,] 14600 5
[58,] 14600 5
[59,] 14600 5
[60,] 14600 5
[61,] 5840 5
[62,] 65535 4
[63,] 14600 5
[64,] 14600 5
[65,] 14600 8
[66,] 131328 5
[67,] 5840 5
[68,] 14600 5
[69,] 14600 5
[70,] 14600 5
[71,] 14600 5
[72,] 14600 5
[73,] 14600 5
[74,] 5840 19
[75,] 14600 5
[76,] 5840 5
[77,] 14600 5
[78,] 14600 5
[79,] 14600 5
[80,] 14600 5
[81,] 14600 5
[82,] 14600 5
[83,] 5840 7
[84,] 14600 5
[85,] 66048 21
[86,] 65535 159
[87,] 6432 6
[88,] 14600 5
[89,] 65535 5
[90,] 8192 10
[91,] 5840 5
[92,] 14600 5
[93,] 14600 5
[94,] 66048 8
[95,] 14600 5
[96,] 16560 5
[97,] 14600 5
[98,] 42900 6
[99,] 8192 7
[100,] 8192 7
我正在使用列的子集,因此我正在进行的实际调用是svd(C[,1:i])
,其中C
是我使用的矩阵{{1}当崩溃时等于2。
我很肯定脚本和提示中的矩阵是相同的(我将它们打印到不同的文件并将它们分开以确保!)
那么,这可能是什么问题?
修改
i
答案 0 :(得分:0)
与OP的错误消息有关,与OP的特定上下文无关。
svd(X,nu = 0L)中的错误:'x'中的值无限或缺失
在计算LDA时发生..
如果所解释的变量/组在提供的数据中只有一个值(无效数据)。