不仅仅是线性回归和R2,一文搞定数据的回归分析
为什么要回归分析?
虽然回归分析被大量应用,但目前论文中的数据分析还主要以线性和幂函数回归为主。还有哪些回归分析方法?回归分析除了用R^2来判断以外,还有没有其他方法?回归分析中主要步骤和误区有哪些?这些是本文主要回答的问题。
主要步骤
回归分析一般包括收集数据、数学模型的假设、模型系数的确定以及有效性判断四个主要步骤。以下分别来进行介绍。
1. 数据收集。通过实验测试或者调查问卷等方法收集数据,有些论文中也会对数值模拟结果进行回归分析。随后确定自变量(种类和数量)和因变量。
2. 数学模型的假设(偶尔被忽略)。数学模型的假设是整个回归分析过程的基础,也是最重要的一个步骤。通常的误区只是利用软件对数据进行拟合分析,然后选择数学模型,只知回归,而不知为什么回归。
正确的方法一般需要先画图了解数据的之间的关系,比如变化趋势等。然后根据数据的实际意义(比如物理意义)来进行推导得到相应模型,其中也可以参考前人总结的规律函数和数学模型等。
最后利用特殊点来初步判断数学模型的有效性。比如化肥用量(X)和粮食产量(Y)之间的关系用Y=c1X+c2比Y=c1X更合适,因为当化肥用量为0时,实际粮食产量不会也为0。
3. 模型系数的确定。通过相应的软件对数据进行回归分析,得到模型中的系数,比如以上表格中c系数。其判断方法为最小二乘法,得到残差平方和最小时的系数。
4. 有效性判断。回归分析不是万能的,只是一个辅助方法。有限性的判断不仅仅是R^2,也不一定是越大越好。其中还有其他判断标准,比如F检测中的P值来判断回归关系的犯错概率。
整个过程里面比较重要的是再次检查模型的实际意义,比如确定特殊点的物理意义是否成立,其中的趋势规律是否合理等。
最后需要了解模型的局限性,比如X和Y值的适用范围等。
回归方法
线性回归(Linear Regression)。线性回归中的假设模型是线性的,这个大家都很熟悉。
主要软件
Excel。用于回归分析最多的软件之一,可以同时进行数据计算处理与回归分析,然后进行显示的软件。软件可以实时显示拟合方程和R2等信息,比较方便。可供选择的假设模型有线性、指数、对数、多项式、指数和平均等。
Python。基于Python中的模块,需要简单编程。对于需要批量处理回归问题以及画图时非常有用。其中可以定制化假设模型和图形类型,画出来的图可以很酷炫,比如在X和Y轴上加数据分布图等,比较实用。
SPSS。这是专业的数据统计分析软件,其中界面与Excel有点相似,主要优势是分析方法的全面性,包含各种统计学分析方法。
写作Checklist
回归分析不是万能的,只是论文数据分析中的一个辅助方法,不是任何数据都能回归的,也不是任何数学模型都是适用的。数据回归分析的checklist总结如下:
-
数据的回归分析一般包括数据收集、数学模型的假设、模型系数的确定以及有效性判断四个主要步骤,其中数学模型的假设偶尔被忽略;
-
数学模型的假设是整个回归分析的基础,也是最重要的一个步骤,需要根据数据的实际意义(比如物理意义)来进行推导得到相应模型,其中也可以参考前人总结的规律函数等;
-
回归有效性的判断不仅仅有R^2,还有P值、实际意义判断和模型局限性分析等;
-
数据回归分析主要有线性回归、多项式回归、逻辑回归、逐步回归、岭回归、套索回归和弹性回归等;
-
回归的软件主要有Excel、Origin、Python,SPSS和MATLAB,其中Python和MATLAB需要简单编程,可以批量处理多数据和多图形。