I'm currently trying to create an R function computing the corr.test correlation of a specified column with all the numeric columns of a dataframe. Here's my code :
#function returning only numeric columns
only_num <- function(dataframe)
{
nums <- sapply(dataframe, is.numeric)
dataframe[ , nums]
}
#function returning a one-variable function computing the cor.test correlation of the variable
#with the specified column
function_generator <- function(column)
{
function(x)
{
cor.test(x, column, na.action = na.omit)
}
}
data_analysis <- function(dataframe, column)
{
DF <- only_num(dataframe)
fonction_corr <- function_generator(column)
sapply(DF, fonction_corr)
}
data_analysis(40, 6, m, DF$Morphine)
When I call "data_analysis" at the last line, I get the following error :
"Error in cor.test.default(x, column, na.action=na.omit) : not enough finite observations"
What could it mean? What should I change? I'm kind of stuck...
Thanks.
Clément