использовать двойной цикл for для доступа к элементу в datafram в r - PullRequest
0 голосов
/ 12 декабря 2018

Я хочу использовать двойной for, чтобы получить доступ к элементу и заполнить его внутри списка.два цикла for, включая первый на основе столбца ID и второй на основе столбца sem, затем используйте if, чтобы проверить, является ли курс "math", скажем:

df:
ID  sem  course
10  1    "math"
10  1    "phys"
10  1    "other"
10  2    "math"
10  2    "phys2"
10  2    "chem"
11  1    "other"
11  2    "math"

здесь код sodu

mylist=list(NA)
for in each ID {
   for j in each sem{
      check the element course=='math'{
          insert it into mylist (or do some other stuffs here)
 }}}

Моя цель - использовать циклы для проверки каждого элемента столбца.результат:

mylist
"math","math", "math"

1 Ответ

0 голосов
/ 12 декабря 2018

Как насчет без всякой петли

rep("math",sum(df$course == "math"))
# returns
[1] "math" "math" "math"

с

df <- structure(list(ID = c(10L, 10L, 10L, 10L, 10L, 10L, 11L, 11L), 
sem = c(1, 1, 1, 2, 2, 2, 1, 2), course = c("math", "phys", 
"other", "math", "phys2", "chem", "other", "math")), class = "data.frame", row.names = c(NA, 
-8L))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...