В тензорном потоке, Как вычислить среднее значение для каждого столбца пакета, сгенерированного из CSV, который имеет NaN в нескольких столбцах? - PullRequest
0 голосов
/ 16 апреля 2020

Я читаю в CSV в пакетах, и каждый пакет имеет нулевые значения в разных местах. Я не хочу использовать тензорное преобразование, поскольку оно требует загрузки всех данных в память. В настоящее время я не могу игнорировать NaN, присутствующие в каждом столбце, в то время как вычисление означает, что я хочу попытаться сделать это для всего пакета сразу. Я могу провести l oop через каждый столбец, а затем найти среднее значение для каждого столбца, но это, кажется, неэффективное решение.

Может ли кто-нибудь помочь найти правильный способ вычисления среднего значения для столбца пакета CSV, в котором NaN присутствуют в нескольких столбцах. Кроме того, [1,2,np.nan] должен производить 1,5, а не 1.

1 Ответ

0 голосов
/ 16 апреля 2020

Я сейчас занимаюсь этим: данный тензор a из rank 2 tf.math.divide_no_nan(tf.reduce_sum(tf.where(tf.math.is_finite(a),a,0.),axis=0),tf.reduce_sum(tf.cast(tf.math.is_finite(a),tf.float32),axis=0))

Дайте мне знать, что у кого-то есть лучший вариант

...