r의 rev () 및 루프를 사용하여 목록에 적용하는 방법

케이스 12345

I, 말 {A, B, C, D ...} 각 요소 A, B, C, D, ...의 목록을 가질 것이있다 data.tableI의 위해, 그러나, 순서를 반대로 할 필요가 data.tableI 만 원하는 rev()그것이 한, 첫 번째 열을 제외하고 그것의 모든 ID. 루프를 사용하여 시도했지만 반환되었습니다.

Error in `[<-.data.table`(`*tmp*`, , -1, value = list(code_a = c("a",  : 
  Item 1 of column numbers in j is -1 which is outside range [1,ncol=4]. Use column names instead in j to add new columns.

예:

a <- c("a","b","c","d","e","f")
b <- 1:6
c <- c("F","E","D","C","B","A")
d <- 10:15
dt1 <- data.table("ID" = b, "code_a" = a)
dt2 <- data.table("ID" = b, "code_c" = c)
dt3 <- data.table("ID" = b, "code_d" = d)
dt <- list(dt1,dt2,dt3)
rev_dt <- rev(dt)
merged_list <- list()
rev_merged_list <- list()
rev_merged_list <- Reduce(merge, rev_dt, accumulate = TRUE)
merged_list <- rev_merged_list
merged_list <- rev(merged_list)

for(z in 1:length(dt)){
  merged_list[[z]][,-1] = rev(merged_list[[z]][,-1])
}

추가 정보:

여기서 for 루프는 다음 과 같아야 합니다.-for z1에서 길이까지 dt- merged_list요소 z (이중 대괄호 포함)는 a 여야합니다 data.table-데이터에 첫 번째 열이 포함되지 않은 경우-rev에 할당되어야합니다. 첫 번째 열도 제외되는 동일한 요소 z

이 논리는 위의 루프에 적용됩니까? 나는 무엇이 잘못되었는지 잘 모르겠습니다!

예상 출력 :

output_ <- list()
a_ <- data.table("ID" = b, "code_a" = a, "code_c" = c, "code_d" = d)
b_ <- data.table("ID" = b, "code_c" = c, "code_d" = d)
c_ <- data.table("ID" = b, "code_d" = d)
output_[[1]] <- a_
output_[[2]] <- b_
output_[[3]] <- c_
output_

나는 어제 위의 병합이 오른손 병합을 지정할 수 있다고 들었지만 그렇게 할 때 병합에 a를 지정해야 by = "ID"하지만 여러 데이터 세트를 병합하는 경우 xy이 무엇인지 확실하지 않습니다.

나는 또한 lapply()루프 대신에 같은 일 할 수 있다는 인상을 받고 있지만,이 경우 어떻게 그것을 달성 할 수 있을지 모르겠습니다. 고마워 ~

Akrun

우리는 사용할 수 있습니다 setcolorder

for(i in seq_along(merged_list)){
   setcolorder(merged_list[[i]],
         c(names(merged_list[[i]])[1], rev(names(merged_list[[i]])[-1])))
   }

all.equal(merged_list, output_, check.attributes = FALSE)
#[1] TRUE

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

루프 (for)를 사용하여 R의 목록에있는 이름을 사용하여 .file 및 write.csv를 다운로드하는 방법

분류에서Dev

mutate를 사용하여 for 루프의 목록에서 열을 만드는 방법

분류에서Dev

R에서 for 루프를 사용하여 행렬의 각 행에 Wilcoxon 테스트를 적용하는 방법

분류에서Dev

중첩 된 for 루프를 사용하여 JavaScript에서 객체 내 배열의 이름 및 목록을 찾는 방법

분류에서Dev

javascript 및 jade에서 foreach 루프를 사용하여 객체의 json 배열에 액세스하는 방법

분류에서Dev

루프를 사용하여 한 폴더의 여러 파일에 awk 스크립트를 적용하는 방법

분류에서Dev

R, for 루프를 사용하여 목록의 각 요소를 동일한 명령으로 실행하는 방법

분류에서Dev

th : switch 및 th : each를 사용하여 thymeleaf에서 두 개의 목록을 처리하는 방법

분류에서Dev

th : switch 및 th : each를 사용하여 thymeleaf에서 두 개의 목록을 처리하는 방법

분류에서Dev

R의 여러 목록에 단일 변수 함수를 적용하는 방법

분류에서Dev

Python에서 루프를 사용하여 목록 목록 정의

분류에서Dev

awk 및 sed를 사용하여 JSON 파일의 목록을 읽는 방법

분류에서Dev

루프를 사용하여 사전에 목록을 추가하는 방법

분류에서Dev

for 루프를 사용하여 한 번에 하나씩 목록의 항목을 다른 목록에 추가하는 방법은 무엇입니까?

분류에서Dev

R의 for 루프 내부에서 ifelse를 사용하는 방법

분류에서Dev

힘내 : commit --amend에서 commit rev를 재사용하는 방법?

분류에서Dev

for 또는 any 루프를 사용하여 홉 서버의 호스트 목록에서 "for 루프"를 실행하는 방법은 무엇입니까?

분류에서Dev

For 루프 및 Tell 함수를 사용하여 각 라인의 시작 위치 목록을 채우는 방법은 무엇입니까?

분류에서Dev

루프를 사용하여 목록의 각 항목을 추가하는 방법은 무엇입니까?

분류에서Dev

목록 및 for 루프를 사용하여 Python 목록에서 csv 처리

분류에서Dev

for 루프를 사용하여 목록의 마지막 요소를 반환하는 방법

분류에서Dev

R에서 루프를 사용하여 n 행렬을 생성하는 방법

분류에서Dev

OpenCV 함수 polylines ()를 C ++의 목록에 적용하는 방법

분류에서Dev

split 및 for 루프를 사용하여 목록에서 문자 대신 단어를 추출하는 방법은 무엇입니까?

분류에서Dev

CSS를 사용하여 효율적으로 목록의 일부를 중앙에 배치하는 방법 [Img Inside]

분류에서Dev

재귀를 사용하여 목록에 함수를 적용하는 방법

분류에서Dev

R에서 for 루프의 값으로 목록 키를 할당하는 방법

분류에서Dev

루프를 사용하여 R에서 큰 목록 만들기

분류에서Dev

"if"및 "while"문에 3 개의 값만 허용하여 루프를 종료하는 방법

Related 관련 기사

  1. 1

    루프 (for)를 사용하여 R의 목록에있는 이름을 사용하여 .file 및 write.csv를 다운로드하는 방법

  2. 2

    mutate를 사용하여 for 루프의 목록에서 열을 만드는 방법

  3. 3

    R에서 for 루프를 사용하여 행렬의 각 행에 Wilcoxon 테스트를 적용하는 방법

  4. 4

    중첩 된 for 루프를 사용하여 JavaScript에서 객체 내 배열의 이름 및 목록을 찾는 방법

  5. 5

    javascript 및 jade에서 foreach 루프를 사용하여 객체의 json 배열에 액세스하는 방법

  6. 6

    루프를 사용하여 한 폴더의 여러 파일에 awk 스크립트를 적용하는 방법

  7. 7

    R, for 루프를 사용하여 목록의 각 요소를 동일한 명령으로 실행하는 방법

  8. 8

    th : switch 및 th : each를 사용하여 thymeleaf에서 두 개의 목록을 처리하는 방법

  9. 9

    th : switch 및 th : each를 사용하여 thymeleaf에서 두 개의 목록을 처리하는 방법

  10. 10

    R의 여러 목록에 단일 변수 함수를 적용하는 방법

  11. 11

    Python에서 루프를 사용하여 목록 목록 정의

  12. 12

    awk 및 sed를 사용하여 JSON 파일의 목록을 읽는 방법

  13. 13

    루프를 사용하여 사전에 목록을 추가하는 방법

  14. 14

    for 루프를 사용하여 한 번에 하나씩 목록의 항목을 다른 목록에 추가하는 방법은 무엇입니까?

  15. 15

    R의 for 루프 내부에서 ifelse를 사용하는 방법

  16. 16

    힘내 : commit --amend에서 commit rev를 재사용하는 방법?

  17. 17

    for 또는 any 루프를 사용하여 홉 서버의 호스트 목록에서 "for 루프"를 실행하는 방법은 무엇입니까?

  18. 18

    For 루프 및 Tell 함수를 사용하여 각 라인의 시작 위치 목록을 채우는 방법은 무엇입니까?

  19. 19

    루프를 사용하여 목록의 각 항목을 추가하는 방법은 무엇입니까?

  20. 20

    목록 및 for 루프를 사용하여 Python 목록에서 csv 처리

  21. 21

    for 루프를 사용하여 목록의 마지막 요소를 반환하는 방법

  22. 22

    R에서 루프를 사용하여 n 행렬을 생성하는 방법

  23. 23

    OpenCV 함수 polylines ()를 C ++의 목록에 적용하는 방법

  24. 24

    split 및 for 루프를 사용하여 목록에서 문자 대신 단어를 추출하는 방법은 무엇입니까?

  25. 25

    CSS를 사용하여 효율적으로 목록의 일부를 중앙에 배치하는 방법 [Img Inside]

  26. 26

    재귀를 사용하여 목록에 함수를 적용하는 방법

  27. 27

    R에서 for 루프의 값으로 목록 키를 할당하는 방법

  28. 28

    루프를 사용하여 R에서 큰 목록 만들기

  29. 29

    "if"및 "while"문에 3 개의 값만 허용하여 루프를 종료하는 방법

뜨겁다태그

보관