Skip to content

Issue with var command in stats package

3 messages · John, Larry, Sarah Goslee, David Winsemius

#
Am using R version 3.2.4 in a fully updated version of Windows 7 and the most current versions of coorplot, FactoMineR and factoextra to support multiple correspondence analysis. However, today, a line of code that worked just fine on one set of data produced an error message on a different set of data.

Specifically, when I ran:

corrplot(var$contrib, is.corr = FALSE)

I received the following message:
Error in var$contrib : object of type 'closure' is not subsettable

Can you please tell me what this error message means and roughly what I might need to do to correct it? If necessary, I can provide the original data files.

Many thanks for your kind help.

Very Respectfully,

Larry John
Principal Analyst
ANSER
#
Somewhere you'd named an R object var, which is also the name of the function.

There's no way to access part of a function with $ so
var$contrib
is throwing the closure error, which is telling you that you can't
index a function.


Sarah
On Sun, Mar 27, 2016 at 12:14 PM, John, Larry <Larry.John at anser.org> wrote:
#
Since there is apparently not an object in your workspace named `var`, the interpreter is instead finding the function named `var` (which delivers the variance of a vector) and then is trying to apply the `$`-function to it .... but there is no `$`-method for functions.
I doubt that the error is in your data. You need to find the section of code that was supposed to be creating an object named `var` and hopefully you now understand why that naming convention was a bad idea. Rewrite that section of code to use objects having more meaningful names, which will result in errors that are more helpful to you in the future.