Size: a a a

R (язык программирования)

2020 December 06

AS

Alexander Semenov in R (язык программирования)
Иван Поздняков
Это можно представить как частный случай ресайклинга: операция на векторах разной длины приводит к повторению меньшего вектора нужное количество раз
Тогда непонятно, почему это является корректным решением данной задачи.
источник

Ю

Юрий 🐙💻🤖📊📈🚬... in R (язык программирования)
#R #юмор
источник

AS

Alexander Semenov in R (язык программирования)
to_factors <- function(test_data, factors){    
test_data[factors] <- mutate_each(test_data[factors], funs(factor(ifelse(. > mean(.), 1, 0))))    
return(test_data)}

Альтернативное правильное решение. И тот же вопрос: если по условию задачи нам нужно сравнить элемент вектора со средним значением этого вектора, то почему "точка" означает и элемент и сам вектор в части . > mean(.).
источник

IY

Igor Yegin in R (язык программирования)
То чувство, когда застрял между 1999 и 2007
источник

AS

Alexander Semenov in R (язык программирования)
Автор этой Лабы часом не в чате? А то мне только что таинственная незнакомка предложила её решить.
источник

R

R in R (язык программирования)
И мне
источник

AS

Alexander Semenov in R (язык программирования)
R
И мне
Так-то по имени и датасету можно опознать.
источник

a

aGricolaMZ in R (язык программирования)
Интересно, как на вас пал выбор
источник

AS

Alexander Semenov in R (язык программирования)
Мы мой вопрос вдвоем по сути тут обсуждали, когда сообщение пришло.
источник

AS

Alexander Semenov in R (язык программирования)
Ответа на который я, кстати, так и не получил.
источник

PU

Philipp Upravitelev in R (язык программирования)
Alexander Semenov
Мы мой вопрос вдвоем по сути тут обсуждали, когда сообщение пришло.
какой вопрос? я освободился и могу посмотреть, наверное
источник

AS

Alexander Semenov in R (язык программирования)
Alexander Semenov
to_factors <- function(test_data, factors){    
test_data[factors] <- mutate_each(test_data[factors], funs(factor(ifelse(. > mean(.), 1, 0))))    
return(test_data)}

Альтернативное правильное решение. И тот же вопрос: если по условию задачи нам нужно сравнить элемент вектора со средним значением этого вектора, то почему "точка" означает и элемент и сам вектор в части . > mean(.).
Этот.
источник

ГД

Григорий Демин... in R (язык программирования)
Alexander Semenov
И то, что х -- это одновременно и вектор и элемент в этом векторе вызывает у меня когнитивный диссонанс.
Интересно, а запись 1:5 > 3 не вызывает когнитивный диссонанс?
источник

AS

Alexander Semenov in R (язык программирования)
Alexander Semenov
Помог своей решить задачку на Stepik и со стыдом осознал, что не понимаю, почему это работает:
test_data <- as.data.frame(list(V1 = c(12, 10, 11, 10, 9, 9), 
                               V2 = c(11, 11, 9, 12, 10, 8),
                               V3 = c(11, 11, 10, 10, 10, 10),
                               V4 = c(11, 10, 9, 11, 11, 8),
                               V5 = c(10, 9, 9, 10, 10, 9),
                               V6 = c(12, 9, 9, 10, 10, 9),
                               V7 = c(11, 11, 12, 10, 9, 9),
                               V8 = c(9, 11, 10, 8, 11, 9),
                               V9 = c(12, 10, 10, 12, 10, 12),
                               V10 = c(13, 9, 9, 9, 10, 9)))



to_factors <- function(test_data, factors){
 fct = function(x) as.factor(ifelse(x > mean(x), 1, 0))
 test_data %>% mutate_at(factors, fct)
}
Изначально вот этот.
источник

AS

Alexander Semenov in R (язык программирования)
Григорий Демин
Интересно, а запись 1:5 > 3 не вызывает когнитивный диссонанс?
Вызывает только в контексте того, каким образом 2 приведенных примера кода оказываются правильным решением поставленной задачи.

Про recycling знаю.
источник

JL

Julia Laryushina in R (язык программирования)
а в чем загвоздка? сначала вычисляется среднее по колонке, потом оно вычитается.
или я не поняла вопрос?
источник

JL

Julia Laryushina in R (язык программирования)
ну и там где-то ifelse еще, да, но не суть
источник

AS

Alexander Semenov in R (язык программирования)
Julia Laryushina
а в чем загвоздка? сначала вычисляется среднее по колонке, потом оно вычитается.
или я не поняла вопрос?
Задача: получить в строке i колонки Х 1 там, где i-e значение > среднего по колонке Х. В обоих вариантах решения значение в строке i и колонка х, по которой считается среднее, обозначаются одним и тем же символом: х в моем решении и . в альтернативном.
источник

ГД

Григорий Демин... in R (язык программирования)
Alexander Semenov
Вызывает только в контексте того, каким образом 2 приведенных примера кода оказываются правильным решением поставленной задачи.

Про recycling знаю.
x = 1:5, mean(x) =3 Сама задача в последней её части несколько криво сформулирована. Там пропущено слово "уровни". Для перевода переменной в фактор используем принцип,  что уровнями считаем 0 и 1, где 0 - значение переменной меньше среднего переменной , 1 - больше
источник

AS

Alexander Semenov in R (язык программирования)
Если бы мы использовали цикл, то мы бы сравнивали x[i] c mean(x). Почему же тогда в этом решении мы сравниваем x с mean(x). Вот чего я понять не могу.
источник