Tengo los archivos CSV con datos numéricos y me gustaría realizar el análisis de estos datos. Tengo la esperanza de que el uso de APL me dará más flexibilidad que la lectura de esta en mysql y la realización de las mismas. Pero para empezar me gustaría hacer extracciones simples como 'select * from mydata donde col1 = 2020'. Hasta ahora entiendo que puedo usar Comprimir. Pero para eso necesito saber la expresión que daría la matriz de tipo boolean para la izquierda argumento de comprimir (es decir, el APL versión de 'donde col1 = 2020'). Búsquedas en línea ¿no me lleve a cualquier lugar en ese departamento.
0
Usted está hecho a la derecha en sus especulaciones.
"col1 = 2020" sería mydata[;1] = 2020
así que la cosa entera es (mydata[;1] = 2020) ⌿ mydata
A mi padre le gustaba definir
∇ data ← data where condition
data ← condition⌿data
∇
así que él podría escribir cosas como data where data[;1] = 2020
Utilizando Dyalog APL características
Dyalog APL proporciona algunos métodos de representación de sutilezas:
- La línea de la expresión puede ser escrita como
mydata ⌿⍨ mydata[;1] = 2020
- La definición anterior de
where
puede escribirse simplemente comowhere ← ⌿⍨
Lo que yo veo. Bueno! Curiosidad: ¿hay una manera de evitar la repetición de los mydata de referencia?
Rudi Angela
@RudiAngela Hay muchas variaciones posibles, especialmente si usted empezar a definir los operadores. E. g.
Adám
select ← {⍵ ⌿⍨ ⍺⍺ ⍵} ⋄ col ← ⌷⍤1⍨
permite escribir (2020=col∘1)select mydata
o podría definir col ← {⍵ ⌿⍨ ⍺ ⍺⍺ ⍵[;⍵⍵]} ⋄ in←⊢
y escribir 2020 = col 1 in mydata
@RudiAngela Siéntase libre de visitar apl.chat para discutir más.
Adám
Va a hacer. Gracias por la sugerencia.
Rudi Angela