【发布时间】:2014-09-17 16:42:36
【问题描述】:
我有一个 .txt 文件,我先将其转换为一个表 Ta(Ta=readtable('xxx.txt')) 然后是一个数组 Aa(Aa=table2array(Ta)),.txt 文件包含 220行和 12 列,但表和数组只有 219 行和 1 列。我哪里做错了?
然后,当我尝试进行逐步回归时,我收到错误消息:未定义函数 'stepwiselm' for input arguments of 'cell' 类型。
我的代码是:mdl=stepwiselm(Aa)
在 .txt 文件中,第一个原始文件是文本,例如海拔、高度、产量等。虽然我可以使用这些名称来定义预测变量和响应变量。但是既然这些名字在 Aa 中丢失了,我应该如何编写逐步回归的代码呢?谢谢!
【问题讨论】:
-
我重新安装了 Matlab,所以现在我有了统计工具箱。然后我创建了一个矩阵 M forA-100spreg-raa01.txt 并逐步运行('M',10),因为我希望第 10 列是 y。在 .txt 中,第 10 列是 'yield',但所有文本都没有显示在 M 中,所以我不知道该怎么写,例如使用'yield'作为因变量,即响应变量和'DEM,grad,HI'作为自变量,即预测变量。Aan我也想计算M的标准偏差,我写了std('M'),但得到了ans = 0 .有什么建议吗?谢谢!
-
我在一个新窗口中得到了逐步回归结果,一切看起来都可以找到。但在命令窗口中,我收到错误:尝试访问 R(1);索引超出范围,因为 numel(R)=0.Error stepwisefit>stepcalc (line 279) Rrank = sum(abs(diag(R)) > tol*abs(R(1)));Error stepwisefit (line 146) [ B,SE,PVAL,stats] = stepcalc(allx,y,in); Error stepwise>stepmain (line 110) [~,~,~,in,stats,nextstep] = ... Error stepwise>doscale (line 860) in = stepmain(X,y,in,F);评估 uimenu 时出错Callbac。
-
很难说。它可能与您输入到
stepwise的内容有关,也许y不应该等于X的列(即尝试stepwise(M(:,1:9),M(:,10)))?M到底长什么样子? -
我有另一个想法,要逐步创建数据集:A = dataset('File','Araa06.txt'),M 是从 Araa06(第一行文本)转换而来的,然后我得到 2错误:'滥用数据集/读取文件(第 207 行)可变长度必须全部相同'。 '错误数据集(第 351 行)a = readFile(a,fileArg,otherArgs)' 知道为什么会这样吗?
-
@A.Klomp 现在它说“从 A-100spreg2-raa06a.txt 读取的变量名称的数量与数据列的数量不匹配。您可能错误地指定了格式字符串、分隔符或标题行数。错误数据集(第 351 行)a = readFile(a,fileArg,otherArgs)' 但我确实有 12 个列的 12 个名称,我该怎么办?
标签: matlab regression