Muchas gracias, Javier, por tu respuesta.
Me sobrevalorás. Mi última clase de matemática como tal fue en 4º de
secundaria, y era la matemática que nos daban a los de letras. Ni te cuento
hace cuántos años. No puedo seguir la mayoría de lo que comentás sin hacer
un trabajo forense. Así que agarré lo que entendí... y me parece que, o lo
que yo quiero hacer son matrices de tres dimensiones (si es que eso
existe), pero no soy capaz de identificar en el link que me pasaste, rasqué
un poco las viñetas y no lo vi.
Lo de usar arrays es porque creí que esa era la manera de pensar en datos
en tres dimensiones, ya que me resultaba evidente que mi lista de matrices
no la podía usar para operar algo como me lo venía dibujando. Pero todo el
tiempo es seguir a la intuición, sabiendo poco... caigo en el pozo.
Capaz que lo que tengo que hacer no es siguiendo ese orden sino otro y
alguna otra lógica:
1- De Partida:- Tengo un df con unos pocos casos y un montón de
variables...
2- Consigo: ... de las que saco sus distancias, variable a variable, que me
las devuelve en matrices cuadradas con diagonal 0. Como es con lapply, me
lo da en una lista
3- Quiero sacar la (matriz de) distancia media de todas esas distancias
puntuales.
Y por eso, pensé en hacer un objeto de tres dimensiones con el que operar.
Pero ni idea de eso cómo se formula en "dialecto" matemático. Aposté
por
*array*.
Querría construirlo en R, porque me resulta evidente cómo aplicarlo en la
investigación que tengo entre manos, y, si funciona, sería aplicable más o
menos fácilmente, me/nos podemos centrar en afinar la teoría, la búsqueda
de nuevos datos, etc.
2018-07-04 17:10 GMT+02:00 Javier Marcuzzi <javier.ruben.marcuzzi en
gmail.com>
:
> Estimado Juan Abasolo
>
> Posiblemente lo que usted desea está en https://cran.r-project.org/
> web/packages/Matrix/index.html, pero yo también en su momento me puse a
> escribir muchas cosas que ya existían y lo realizaba para aprender
> (posiblemente todo el que desee aprender correctamente debe intentar
> escribir funciones desde cero).
>
> Yo no vengo de una universidad donde la matemática y álgebra es el fuerte,
> lógicamente por la carrera, por lo cuál para trabajar con matrices tube que
> poner muchísimo de mi parte, y uno de los errores que yo cometí fue colocar
> ceros en lugar de NA y R no me daba, luego mi profesora de matemática
> cuándo vio mi error casi tiene un paro cardíaco. El trabajar con matrices
> está muy bien y es potente, pero para realizar un cálculo utilizar
> data.frame es mucho más cómodo con R, mi pensamiento es: si ne necesita
> álgebra utilizar matrices, si se necesita trabajar sobre datos y hay una
> librería o función en R, utilizar una forma de almacenar más amigable.
>
> Si usted lo desea puedo buscar un curso de R donde todo está con matrices
> (si la universidad de Canadá no lo quitó de internet), serán como 400 hojas
> en total, donde algo de 20 o 30 líneas en matrices luego está escrito en
> funciones específicas de R ocupando dos o tres renglones, y lo asombroso es
> en el tiempo que demora la computadora en realizar los cálculos,
> lógicamente hay funciones donde se prepara la matriz, otra donde se escribe
> como calcular, mucho más lindo para mostrar todo el trabajo pero lento en
> ejecutar y en tiempo humano el esfuerzo es mayor.
>
> En la dirección que le envío hay algunos ejemplos sobre cómo realizar
> algunos cálculos con matrices y el autor es el mismo de lme4, yo esquivaría
> los array o matrices, aunque en R la diferencia entre estos esta en las
> dimensiones, iría a los formatos de datos más nativos para R, como son
> data.frame o listas, mire por ejemplo lapply, la letra l lleva a lista,
> cuándo escribieron la función los programadores tenían en mente la lista o
> data.frames antes que matrices para acomodar los datos, y el concepto de la
> facultad sobre matrices cuándo me lo explicaron es que era una método de
> acomodar la información, desconozco la definición matemática correcta, pero
> es la forma en que yo comencé a aprender, y para acomodar datos en R y
> realizar algunas operaciones, matrices no es lo más cómodo, aunque también
> es cierto que mi profesor de genética cuándo me enseñaba Fortran me hacía
> leer un libro en basic donde había matrices y conocí BLAS, es el origen,
> pero no lo más práctico, matemáticamente es muy lindo utilizar matrices y
> se ve bien al correr en la computadora, pero lleva mucho tiempo y esfuerzo.
> Piense que en el código que usted envía hay tres renglones, y en dos
> utiliza as.matrix, as.array, as.list, usted está forzando muchas
> conversiones, no digo que no se pueda, pero si estandariza a un tipo de
> datos esas tres conversiones son menos trabajo para la computadora.
>
> Javier Rubén Marcuzzi
>
> El mié., 4 jul. 2018 a las 8:29, Juan Abasolo (<juan.abasolo en
ehu.eus>)
> escribió:
>
>> Buenas,
>> Sigo aprobechando par aaprender en las vacaciones de alumnos y
nuevamente
>> recurro a Uds. Sé que la perspectiva puede ser erronea, o sea que les
pido
>> que entiendan lo que quiero decir, más que lo que digo.
>>
>> Tengo una lista de matrices todas de idénticas dimensiones, y necesito
>> hacer operaciones entre ellas.
>>
>> Ocurrencia: creí que podría hacer un array, de tal manera que , así
como
>> puedo hacer un colsum para reducir dos dimensiones en una, podría hacer
un
>> queséyoquéSum que me dejase el array en una matriz de resultados.
>>
>> Mis datos tienen una pinta, más o menos así:
>>
>> # Unas matrices de distancias hechas df
>> fejemplo <- function(x)as.matrix(dist(x))
>> miarray <- as.array(lapply(as.list(airquality[,2:4]), fejemplo))
>>
>> # Ensoñaciones
>> miarraydemedias <- sumenselaspilasydividanseporn(miarray)
>>
>> En este ejemplo no conseguí dejar vacios los valores NA, pero sí los
NaN
>> en
>> los míos. Magia?
>> Lo remarco porque, además de sumas de matrices, también querría
calcular
>> la
>> matriz media de todos los datos.
>>
>> Paciencia,por favor, soy un intruso autodidacta. Y muchas gracias
>>
>>
>> --
>> Juan Abasolo
>>
>> Hizkuntzaren eta Literaturaren Didaktika Saila
>> Bilboko Hezkuntza Fakultatea
>> Euskal Herriko Unibertsitatea
>> UPV/EHU
>>
>> Sarriena auzoa z/g
>> 48940 Leioa
>> Bizkaia
>>
>> [[alternative HTML version deleted]]
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>
--
Juan Abasolo
Hizkuntzaren eta Literaturaren Didaktika Saila
Bilboko Hezkuntza Fakultatea
Euskal Herriko Unibertsitatea
UPV/EHU
Sarriena auzoa z/g
48940 Leioa
Bizkaia
[[alternative HTML version deleted]]