Nano Hash - криптовалюты, майнинг, программирование

замена отсутствующего значения незначащими значениями в сгруппированных данных с использованием tidyverse

Для каждого идентификатора я пытаюсь заменить отсутствующие значения доступными данными.

library(tidyverse)
df <- data.frame(id=c(1,1,1,2,2,2,3), 
                 a=c(NA, NA, 10, NA, 12, NA, 10),
                 b=c(10, NA, NA, NA, 13,NA, NA))
> df
  id  a  b
1  1 NA 10
2  1 NA NA
3  1 10 NA
4  2 NA NA
5  2 12 13
6  2 NA NA
7  3 10 NA

Я пытался:

df %>% 
  dplyr::group_by(id) %>%
  dplyr::mutate_at(vars(a:b), fill(., direction="up"))

и получите следующую ошибку:

Error: 1 components of `...` had unexpected names.

We detected these problematic arguments:
* `direction`

Did you misspecify an argument?

Желаемый результат:

  id  a  b
1  1 10 10
2  1 10 NA
3  1 10 NA
4  2 12 13
5  2 12 13
6  2 12 13
7  3 10 NA
18.05.2020

Ответы:


1

Мы не используем fill с mutate_at. Согласно ?fill

данные - фрейм данных. и

... - Выбор столбцов. Если пусто, ничего не происходит. Вы можете указать голые имена переменных, выбрать все переменные между x и z с помощью x:z, исключить y с помощью -y. Ф

library(dplyr)
library(tidyr)
df %>%
    group_by(id) %>%
    fill(a:b, .direction = 'up')
# A tibble: 7 x 3
# Groups:   id [3]
#     id     a     b
#  <dbl> <dbl> <dbl>
#1     1    10    10
#2     1    10    NA
#3     1    10    NA
#4     2    12    13
#5     2    12    13
#6     2    NA    NA
#7     3    10    NA
18.05.2020
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..