Для цикла в R и добавить значение путем создания нового столбца - PullRequest
0 голосов
/ 12 июня 2018

У меня есть набор данных следующим образом:

  UID     days
-------|---------
  152  | Monday
  145  | Tuesday
  162  | Thursday
  234  | Sunday

У меня есть 2 столбца в моем наборе данных UID и days.Теперь, как мне создать новый столбец is_weekday в R и перебрать столбец Days и добавить 1, если это будний день, и 0, еслиэто выходные.

Ответы [ 2 ]

0 голосов
/ 12 июня 2018

В качестве альтернативы, здесь есть tidyverse способ

df %>%
    mutate_if(is.factor, as.character) %>%
    mutate(is_weekday = 1 - as.numeric(str_detect("Saturday|Sunday", days)))
#  UID     days is_weekday
#1 152   Monday          1
#2 145  Tuesday          1
#3 162 Thursday          1
#4 234   Sunday          0

Пример данных

df <- read.table(text =
    "UID days
152 Monday
145 Tuesday
162 Thursday
234 Sunday", header = T)
0 голосов
/ 12 июня 2018
ifelse(grepl("Saturday|Sunday",dat$days),0,1)
[1] 1 1 1 0
> transform(dat,is_weekday=ifelse(grepl("Saturday|Sunday",days),0,1))
  UID     days is_weekday
1 152   Monday          1
2 145  Tuesday          1
3 162 Thursday          1
4 234   Sunday          0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...