The main advantage of open-source software packages is their price. They are free for commercial and non-commercial use. However, this convenience also carries certain disadvantages. Each open-source and free package has its own flaws.
In general, large users usually require support from the manufacturer when a problem occurs in the installation or operation of the software, as well as a guarantee of correct operation. Given the nature of open-source software, it is not realistic to expect a large organization to put itself in a position to solve problems by sending requests for correction of errors in the software on GitHub.
An important issue is the existence of documentation and the possibility of training. Although the situation here is somewhat better than in the previous question, for many open-source statistical packages there is not enough good documentation, that is, there are no training opportunities. However, for the most popular ones, extensive and advanced online or offline courses can be found, which are very often free or at very low prices.
Many free statistical packages also show weaknesses in terms of comprehensiveness of statistical techniques from the domain for which they were created, as well as various technical shortcomings. The reasons are again found in the nature of open-source or free licenses: given the absence of significant commercial value for the authors, they very often cannot devote enough time to the full implementation of all the necessary software solutions. Technical problems are also largely related to popular open-source solutions.
This group of statistical packages can be divided by the comprehensiveness of statistical techniques into those that claim to cover all or most of the significant statistical techniques for a particular domain and partial solutions that can be found on the Internet, and which mainly refer to one, two or a smaller set of statistical techniques that solve a specific problem in a particular scientific field.
R
R is a programming language and environment for statistical computing and graphing. It is a GNU project very similar to the S language and environment developed at Bell Labs. R can be considered a different implementation of the S language. Although there is a significant difference, most S code will work in R unchanged. It runs on a wide range of UNIX platforms, Windows and macOS operating systems.
It first appeared in the 1990s and served as an implementation of the S statistical programming language. The core team consists of 20 people, with another 50 working as bug fixers. The biggest strengths are the ecosystem of packages (if there is a statistical technique, chances are there is already an R package for it) and the graphics capabilities. It is most widely used in the fields of finance and statistics.
R is an integrated set of software routines for data manipulation, calculations, and graphical display that includes:
- routines for handling and storing data,
- a set of operators for calculations on arrays, especially matrices,
- a large, coherent, and integrated collection of data analysis tools,
- graphics routines for analyzing and displaying data on screen or paper, and
- a well-developed, simple, and efficient programming language that has branching, iteration, user-defined functions, and I/O routines.
The term “environment” should characterize R as a purposefully developed coherent system, rather than as a gradual increase in the number of very specific and inflexible tools, as is the case with most other statistical packages. A standard development environment is included with the installation of R, and in addition to it, the currently popular RStudio environment offers slightly more advanced options. RStudio is very similar to integrated development environments in other programming languages and has all the tools needed to work with R:
- editor,
- help,
- output window,
- debugger,
- various diagnostic tools,
- variable inspector, etc.
R is designed as a true programming language that allows users to add new functionality by defining new functions. Most of the system is written in R. For tasks that require intensive computing, and therefore high speed, real-time linking and calling of C, C++ and Fortran code is enabled. Advanced users can write C code and manipulate R objects directly.
R is extensible through packages. There are eight packages that come with an R installation, and many more are available on CRAN sites, covering a wide range of modern statistics. Additional packages are installed simply from the command line, after which the R environment finds the package's location on the Internet, saves it to a local disk, unpacks it, and prepares it for use. Since extending R does not require anyone's permission, the R community is very active in contributing new packages, so that today there are several thousand packages available through CRAN. Because it is strongly tied to the academic community, any new field of study is likely to have an R package, ensuring that R constantly evolves alongside the latest methodological advancements in research.
R is very object-oriented and is more than a statistical programming language. R has become a tool for data mining. The great strength of R lies in the generation of static graphics that can produce high-quality graphs, including mathematical symbols. Through additional packages, it is possible to create dynamic and interactive graphs.
The biggest problem with R is memory organization, which is why it has a problem with the size of the data. In the free version, all data is loaded into RAM. Therefore, the size of the operating memory of the computer on which it is running is a limit to the size of the data that can be processed in R. Modern R users overcome RAM limitations using open-source, out-of-core data frameworks such as Apache Arrow, data.table, or duckdb, which process multi-gigabyte datasets without requiring expensive enterprise upgrades.
Also, programmers coming from other programming languages find R strange. R's architecture is rooted in functional programming paradigms (similar to Scheme), which favor in-memory data processing for rapid statistical computation. Memory management challenges with large datasets stem from this design choice rather than outdated technology.
There is also the problem of interactivity that is overcome by combining R with JavaScript. On these grounds, the most popular library currently is Shiny, which makes it easy to create interactive R scripts that run via a web browser.
R's use is supported by its wide use in industry and academia, its power and flexibility, its very large user base, a wealth of books and documentation, and the availability of several quality work environments. However, R is not user-friendly and is very difficult to learn compared to other statistical packages.
Gretl
(Gnu Regression, Econometrics and Time-series Library)
Gretl is designed for solving econometric problems and analyzing and modeling time series, and is in some ways a free counterpart to the EViews program.
It has a problem working with large data sets.
Gretl comes with options for stationarity tests, allowing the user to choose the type of test. Predictions are made automatically and include actual values, point estimates, interval predictions, and graphs. It is particularly suitable for differentiation or series involving autocorrelation.
Gephi
Gephi is a free, open-source statistical tool for graph (network) analysis. There are versions for all major operating systems: Windows, Mac OS, and Linux.
Gephi allows you to visualize and analyze various types of networks, discover the structure of connections between objects (link analysis), analyze and create biological and social networks. As a result, all important network metrics are obtained: network degree, connectivity, closeness, density, path length, network diameter, modularity, clustering coefficient, etc.
Gephi does not require programming skills and has the ability to be expanded by installing plugins. There is an online community working on developing plugins, so it is possible to find ready-made solutions to many standard problems.
PSPP
PSPP aims to be a free equivalent of SPSS. The ultimate plan is to completely copy the functionality of SPSS, but as of 2016, despite being in development since 1998, this plan has not progressed much. The reason for this is that it is developed by a very small team, even smaller than R.
Although it closely resembles SPSS in terms of its user interface and program organization and has no problems with the size of the data, its biggest problem is the very small set of implemented statistical procedures.
Comments (0)