Como repetir un análisis Kruskal-Wallis en R con un bucle ‘for’ y obtener una solución única para cada variable analizada

soy bastante nuevo en la programación y en R, así que ando muy perdido con este problema:

Necesito hacer un análisis de Kruskal-Wallis para un número elevado de variables numéricas respecto de diferentes variables categóricas y obtener un valor de significación para cada una de las variables numéricas. Mis datos son más o menos así:

‘Sample,Nunatak,Slope,Altitude,Depth,Fluoride,Acetate,Formiate,Chloride,Nitrate (…) m4,1,1,1,1,0.044,0.884,0.522,0.198,0.021 m6,1,1,1,2,0.059,0.852,0.733,0.664,0.038 m7,1,1,1,3,0.082,0.339,1.496,0.592,0.034 m8,1,1,2,1,0.112,0.812,2.709,0.357,0.014 m10,1,1,2,2,0.088,0.768,2.535,0.379,0 m11,1,1,3,1,0.101,0.336,4.504,0.229,0 m13,1,1,3,2,0.092,0.681,1.862,0.671,0.018 m14,1,2,2,1,0.12,1.055,3.018,0.771,0 m16,1,2,2,2,0.102,1.019,1.679,1.435,0 m17,1,2,2,3,0.26,0.631,0.505,0.574,0.008’ (…)

Siendo Nunatak, Slope, Altitude y Depth las variables categóricas y el resto (Fluoride…) las numéricas.

Para no tener que repetir:

kruskal.test("Factor a analizar 1"~"Variable de categorización 1",  data=env_fact) 

Tantas veces como variables tengo, un compañero me ha ayudado a crear un bucle ‘for’ como el que sigue:

my.variables <- colnames(env_fact) for(i in 1:length(my.variables)) {     if(my.variables[i] == 'Categorical_var') {         next     } else {         kruskal.test(env_fact[,i], env_fact$  Categorical_var)     } } 

Sin embargo, no conseguimos escribir un código que nos permita sacar los valores del test para cada una de las variables numéricas (my.variables) que analizamos, sino que solo hemos conseguido sacar un valor de significación para el análisis como si se realizara con todas las variables numéricas a la vez.

¿Alguna idea de cómo modificar el pequeño código para poder tener en pantalla o en un output los valores del Kruskal-Wallis test para cada una de las variables numéricas que necesito analizar?

Muchas gracias de antemano