Игра в поиск слов: Как выбрать несколько элементов в GridView с помощью перетаскивания? (Android)

if оператор не векторизован. Для векторизованных операторов if вы должны использовать ifelse. В вашем случае достаточно написать

w <- function(a){
if (any(a>0)){
  a/sum(a)
}
  else 1
}

или короткую векторную версию

ifelse(a > 0, a/sum(a), 1)

. Это зависит от того, что вы хотите использовать, потому что первая функция дает выходной вектор длина 1 (в остальной части) и ifelse дает выходной вектор длины, равный длине a.

7
задан user2624402 1 August 2013 в 00:49
поделиться