En caso de que haya alguna duda: Nan = Non-numeric datatypea los efectos de este desafío.
Escriba un programa o función que tome una matriz / matriz como entrada, así como una lista de índices de columna.
El desafío es eliminar las filas donde están todos los elementos en las columnas especificadas Nan. No importa si otros elementos en la fila son numéricos o no. Con suerte, los siguientes ejemplos aclararán esto (está indexado):
Input array:
16 NaN 3 13
5 11 NaN 8
NaN 7 NaN 12
4 14 -15 1
Input column index: [1 3]
Output array:
16 NaN 3 13
5 11 NaN 8
4 14 -15 1
----
Input array:
16 NaN 3 13
5 11 NaN 8
NaN 7 NaN 12
4 14 -15 1
Input column index: 3
Output array =
16 NaN 3 13
4 14 -15 1
----
Input array:
NaN NaN NaN NaN
NaN NaN NaN NaN
NaN NaN NaN NaN
NaN NaN NaN NaN
Input column index: 1 2 4
Output array:
[]
Reglas y aclaraciones:
- La matriz siempre estará vacía.
- Los valores numéricos serán finitos, pero no necesariamente enteros o valores positivos.
- El vector índice de la columna puede estar vacío (en cuyo caso no se eliminarán filas)
- El índice de la columna nunca tendrá valores que excedan las dimensiones de la matriz.
- Puede suponer que no habrá duplicados en la lista de índice de la columna
- Puede elegir si desea utilizar valores indexados cero o uno (especifique)
- Puede tomar la entrada en cualquier formato conveniente
- La matriz como lista de listas está bien. Los índices de columna pueden ser argumentos separados
ans =y similar es aceptado en la salida- Usted es libre de elegir qué tipo de datos no numéricos desea usar
- Debería ser imposible realizar operaciones aritméticas con este tipo de datos, o convertirlo a un número finito utilizando funciones como
float(x).
- Debería ser imposible realizar operaciones aritméticas con este tipo de datos, o convertirlo a un número finito utilizando funciones como
Este es el código de golf, por lo que el código más corto en bytes gana.
JconvzyKconQ.zse inicializa a entrada,Qa entrada evaluada.