Alright, I'm embarking on this endeavor as one of those "spare time" projects. I've long thought that there should be a good VB6 open-source program for doing various statistical analyses, and I've actually got VB6 pieces to a great many of them. I'm going to take my time with this though, and paste updates to this #1 (OP) post as things progress. Also, thoughts and ideas are more than welcome.
My philosophy is going to be that the actual data massaging will take place in Excel. And then, when the data are ready to analyze, it'll be moved into this VB6 program and analyzed. This obviates the need for data massaging/manipulation routines. Excel already does all of this quite well. (Just as an FYI, yes, I know that Excel also does primitive hypothesis testing, but I hope that this will expand well beyond the abilities of Excel, possibly approaching the abilities of something like SPSS. Also, many may want to incorporate these routines into their existing VB6 projects.)
Here's a brainstorm list of what I'd like to see:
Clearly, there's much to do. However, even if a subset of the above could be accomplished, this may very well become a teaching tool for intro-stats classes, possibly giving VB6 a bit more clout. I'm not saying I'll complete the above list, but I do have sizable chunks of that code lying around, and I do have a strong knowledge of what's going on with this stuff.
Reverse chronological log:
1/11/17: Made first post, a start. It includes mechanisms for moving things back and forth from Excel, and it provides output (to Immediate window) for a one sample t-test.
The main dataset form:
![Name: Image3.jpg
Views: 51
Size: 34.8 KB]()
The one group t-test form:
![Name: Image4.gif
Views: 33
Size: 10.3 KB]()
Just sending output to the debug/immediate window for now:
If you know anything about statistics, hopefully you can see that this could be useful.
Again, I welcome assistance with anyone who would like to participate in this project. Here are some ideas that I'd welcome help on:
If you do decide to participate, possibly post your changes in posts below in-between [code][/code] with your changes highlighted in red. If they make sense, I'll absolutely incorporate them.
Just as an FYI, I know that my passion will be adding additional hypothesis test procedures to the project.
I'm going to save a couple of subsequent posts, just in case this thing actually takes off.
Best Regards to All,
Elroy
My philosophy is going to be that the actual data massaging will take place in Excel. And then, when the data are ready to analyze, it'll be moved into this VB6 program and analyzed. This obviates the need for data massaging/manipulation routines. Excel already does all of this quite well. (Just as an FYI, yes, I know that Excel also does primitive hypothesis testing, but I hope that this will expand well beyond the abilities of Excel, possibly approaching the abilities of something like SPSS. Also, many may want to incorporate these routines into their existing VB6 projects.)
Here's a brainstorm list of what I'd like to see:
- parametric hypotheses:
- one group t-test (in first release)
- two group t-test
- one-way ANOVA
- two-way ANOVA
- Pearson's correlation
- simple linear regression
- multiple linear regression
- general linear model analysis
- overall analysis
- forward, backward, and stepwise best fit models
- logistic regression hypotheses
- non-parametric hypotheses:
- Mann-Whitney
- Wilcoxon sign-rank
- Kruskal-Wallis
- Cochran test
- Friedman test
Clearly, there's much to do. However, even if a subset of the above could be accomplished, this may very well become a teaching tool for intro-stats classes, possibly giving VB6 a bit more clout. I'm not saying I'll complete the above list, but I do have sizable chunks of that code lying around, and I do have a strong knowledge of what's going on with this stuff.
Reverse chronological log:
1/11/17: Made first post, a start. It includes mechanisms for moving things back and forth from Excel, and it provides output (to Immediate window) for a one sample t-test.
The main dataset form:
The one group t-test form:
Just sending output to the debug/immediate window for now:
Code:
One Sample t-test from Data
Variable: A
"H0" test value: 0
N (valid): 5
Mean: 44
Standard deviation: 28.8097205817759
t calculated: 3.41506
p (one tailed): 0.01345
p (two tailed): 0.02690
Standard error: 12.8840987267251
DF: 4
Alpha value: 0.05
t critical (two tailed): 2.77644510519779
95% confidence interval for mean: 8.22800715529891 79.7719928447011
Kolmogorov-Smirnov D: 0.19759
p (two tailed) for Kolmogorov-Smirnov test of normality: 0.98979
Again, I welcome assistance with anyone who would like to participate in this project. Here are some ideas that I'd welcome help on:
- A bulletproof routine that would allow double-click editing of the dataset grid (including variable names, but excluding the record number column). Just editing of existing data. We'll take a look at adding rows/columns later.
- A hard look at the routine that converts the Kolmogorov-Smirnov D to a p-value. This can be improved.
- Some kind of white-page form (with print option) that can be used similar to the immediate window for reporting. Even a fixed-width font would be fine. It would need to be easy to send output to though, possibly having a project-wide "Print" or "Output" procedure to use it. It would also need copy-paste capability for people to make use of it.
- Beta testing, and reporting back with any errors/suspicions/suggestions.
- For the Kolmogorov-Smirnov, I had to sort an array. I just threw together a primitive sort. Someone is welcome to slip in a quick-sort or some other better sort.
If you do decide to participate, possibly post your changes in posts below in-between [code][/code] with your changes highlighted in red. If they make sense, I'll absolutely incorporate them.
Just as an FYI, I know that my passion will be adding additional hypothesis test procedures to the project.
I'm going to save a couple of subsequent posts, just in case this thing actually takes off.
Best Regards to All,
Elroy