数理统计程序集

源代码在线查看: 多元线性f1.frm

软件大小: 2183 K
上传用户: jjjjjkkkkjkjkjk
关键词: 数理统计 程序
下载地址: 免注册下载 普通下载 VIP

相关代码

				VERSION 5.00
				Begin VB.Form frmFileName 
				   Appearance      =   0  'Flat
				   BackColor       =   &H80000005&
				   Caption         =   "多元线性回归"
				   ClientHeight    =   4065
				   ClientLeft      =   60
				   ClientTop       =   345
				   ClientWidth     =   5670
				   LinkTopic       =   "Form1"
				   ScaleHeight     =   4065
				   ScaleWidth      =   5670
				   StartUpPosition =   3  '窗口缺省
				   Begin VB.TextBox txtFile 
				      Alignment       =   2  'Center
				      Appearance      =   0  'Flat
				      Height          =   270
				      Left            =   120
				      TabIndex        =   9
				      Top             =   3000
				      Width           =   5415
				   End
				   Begin VB.CommandButton cmdExit 
				      Caption         =   "退出"
				      Height          =   375
				      Left            =   4920
				      TabIndex        =   7
				      ToolTipText     =   "结束程序运行"
				      Top             =   3480
				      Width           =   615
				   End
				   Begin VB.CommandButton cmdOK 
				      Caption         =   "确定"
				      Height          =   375
				      Left            =   4080
				      TabIndex        =   6
				      ToolTipText     =   "选择好文件并给出行数和列数后单击"
				      Top             =   3480
				      Width           =   615
				   End
				   Begin VB.FileListBox File1 
				      Appearance      =   0  'Flat
				      Height          =   1470
				      Left            =   120
				      TabIndex        =   2
				      Top             =   1080
				      Width           =   2655
				   End
				   Begin VB.DirListBox Dir1 
				      Appearance      =   0  'Flat
				      Height          =   2190
				      Left            =   3000
				      TabIndex        =   1
				      Top             =   360
				      Width           =   2415
				   End
				   Begin VB.DriveListBox Drive1 
				      Appearance      =   0  'Flat
				      Height          =   300
				      Left            =   120
				      TabIndex        =   0
				      Top             =   360
				      Width           =   2655
				   End
				   Begin VB.Label Label5 
				      Alignment       =   2  'Center
				      Appearance      =   0  'Flat
				      BackColor       =   &H80000005&
				      Caption         =   "数据文件全名"
				      ForeColor       =   &H80000008&
				      Height          =   255
				      Left            =   1320
				      TabIndex        =   8
				      Top             =   2760
				      Width           =   3015
				   End
				   Begin VB.Label Label3 
				      Alignment       =   2  'Center
				      Appearance      =   0  'Flat
				      BackColor       =   &H80000005&
				      Caption         =   "选择数据文件"
				      ForeColor       =   &H80000008&
				      Height          =   255
				      Left            =   120
				      TabIndex        =   5
				      Top             =   840
				      Width           =   2535
				   End
				   Begin VB.Label Label2 
				      Alignment       =   2  'Center
				      Appearance      =   0  'Flat
				      BackColor       =   &H80000005&
				      Caption         =   "选择目录"
				      ForeColor       =   &H80000008&
				      Height          =   255
				      Left            =   3000
				      TabIndex        =   4
				      Top             =   120
				      Width           =   2415
				   End
				   Begin VB.Label Label1 
				      Alignment       =   2  'Center
				      Appearance      =   0  'Flat
				      BackColor       =   &H80000005&
				      Caption         =   "选择驱动器"
				      ForeColor       =   &H80000008&
				      Height          =   255
				      Left            =   120
				      TabIndex        =   3
				      Top             =   120
				      Width           =   2655
				   End
				End
				Attribute VB_Name = "frmFileName"
				Attribute VB_GlobalNameSpace = False
				Attribute VB_Creatable = False
				Attribute VB_PredeclaredId = True
				Attribute VB_Exposed = False
				'多元线性回归文件窗体
				Option Explicit
				Dim intI As Integer, intJ As Integer
				Dim intFileNumber As Integer            '文件号
				Dim strData As String                   '临时保存数据
				Dim blnTitle As Boolean                 '是否有标题
				Dim blnRowLabel As Boolean              '是否有行标
				Dim blnColLabel As Boolean              '是否有列标
				
				Private Sub Form_Load()
				    File1.Pattern = "*.dat"             '只显示数据文件
				    Me.Width = 5760
				End Sub
				
				'选择目录
				Private Sub Dir1_Change()
				    File1.Path = Dir1.Path
				End Sub
				
				'选择驱动器
				Private Sub Drive1_Change()
				    Dir1.Path = Drive1.Drive
				End Sub
				
				'确定数据文件
				Private Sub File1_Click()
				    txtFile.Text = Dir1.Path & "\" & File1.FileName
				End Sub
				
				'确定,给出文件名和行数、列数后单击
				Private Sub cmdOK_Click()
				    strFileName = txtFile.Text          '文件名
				    intFileNumber = FreeFile            '取得空闲的文件号码
				    Open strFileName For Input As intFileNumber
				    Input #intFileNumber, strData       '读列数
				    intCol = Val(strData)               '取得列数
				    If intCol >= 2 Then
				        For intI = 2 To intCol          '空转,读*****
				            Input #intFileNumber, strData
				        Next intI
				    End If
				    Input #intFileNumber, strData       '读行数
				    intRow = Val(strData)               '取得行数
				    If intCol >= 2 Then
				        For intI = 2 To intCol          '空转,读*****
				            Input #intFileNumber, strData
				        Next intI
				    End If
				    n = intRow: m = intCol - 1
				'重新定义自变量数组
				    ReDim x(1 To n, 1 To m)
				'重新定义因变量数组
				    ReDim y(1 To n)
				'保存回归系数数组和工作单元
				    ReDim b(0 To m), a(1 To m, 1 To m)
				'重新定义t检验值数组
				    ReDim t(1 To m)
				    Input #intFileNumber, strData       '读总行数
				    intRowAll = Val(strData)            '取得总行数
				    If intCol >= 2 Then
				        For intI = 2 To intCol          '空转,读*****
				            Input #intFileNumber, strData
				        Next intI
				    End If
				    blnTitle = False: blnRowLabel = False: blnColLabel = False
				'优先考虑标题
				    If intRowAll > intRow + 3 Then blnTitle = True      '有标题
				'其次考虑行标
				    If intRowAll > 2 * intRow + 3 Then
				        blnRowLabel = True                              '有行标
				        ReDim strRowLabel(1 To intRow)                  '重新定义行标数组
				    End If
				'最后考虑列标
				    If intRowAll > 2 * intRow + 4 Then
				        blnColLabel = True                              '有列标
				        ReDim strColLabel(1 To intCol)                  '重新定义列标数组
				    End If
				    If blnTitle Then
				        Input #intFileNumber, strData   '读标题
				        strLabelName = strData          '保存标题
				        If intCol >= 2 Then
				            For intI = 2 To intCol      '空转,读*****号
				                Input #intFileNumber, strData
				            Next intI
				        End If
				    End If
				    If blnRowLabel Then
				        For intI = 1 To intRow
				            Input #intFileNumber, strData               '读行标题
				            If intCol >= 2 Then
				                For intJ = 2 To intCol                  '空转,读*****号
				                    Input #intFileNumber, strData
				                Next intJ
				            End If
				        Next intI
				    End If
				    If blnColLabel Then
				        For intI = 1 To intCol                          '读列标题
				            Input #intFileNumber, strData
				        Next intI
				    End If
				    For intI = 1 To intRow
				        For intJ = 1 To intCol
				            Input #intFileNumber, strData               '读数据
				            If intJ = intCol Then
				            y(intI) = Val(strData)
				            Else
				            x(intI, intJ) = Val(strData)
				            End If
				        Next intJ
				    Next intI
				    Close
				    frmCalculate.Visible = True
				End Sub
				
				'结束运行
				Private Sub cmdExit_Click()
				    Unload Me
				    End
				End Sub
				
				
				
							

相关资源