.by에서 .SD와 표현식을 함께 사용할 때 "개체를 찾을 수 없음"

R. Zhu

이 문제는 나를 미치게 만든다.

먼저이 예제 데이터 세트가 있다고 가정 해 보겠습니다.

set.seed(42)
dt <- data.table(mydate = seq(as.Date("2009-01-01"), as.Date("2012-01-01"), by = "day"),
                 id = sample(1:5, 1096, replace = T),
                 id.sub = sample(letters[1:3], 1096, replace = T),
                 val = rnorm(1096))

다음과 같이 보입니다.

           mydate id id.sub        val
   1: 2009-01-01  4      c -0.2712793
   2: 2009-01-02  5      b  1.8967819
   3: 2009-01-03  3      b  1.0168226
   4: 2009-01-04  5      a  0.8324829
   5: 2009-01-05  1      a -1.8251198
  ---                                
1092: 2011-12-28  4      c -1.2794301
1093: 2011-12-29  2      a  0.1221805
1094: 2011-12-30  2      c -1.2370464
1095: 2011-12-31  3      c  2.2440864
1096: 2012-01-01  2      a  1.1407802

이제 id.sub가 "b"와 같으면 각 ID와 매주의 최대 날짜와 val 평균을 계산하고 싶습니다. 내가 얼마나 멀리 왔는지 :

dt[,
   .(max.date = max(mydate),
     mean.val = mean(.SD[id.sub == "b", val])),
   by = list(id, wk = format(mydate, "%Y-%V"))]

그러나 다음과 같은 오류로 인해 벽에 머리를 부딪 히게됩니다.

Error in `[.data.table`(dt, , .(max.date = max(mydate, na.rm = T), mean = sum(.SD[id.sub ==  : 

  object 'mydate' not found

"mean.val"줄 또는 "max.date"줄을 제거하면 코드가 작동하지만 함께 모이면 제대로 실행되지 않습니다. 나는 그것이 어떻게 잘못되었는지 전혀 모른다. 누구든지 나를 도울 수 있습니까? 감사합니다.

내 data.table 버전은 v1.9.5입니다.

리치 스크 라 이븐

당신이 찾고 있었던 것 같아요 mean.val = mean(val[id.sub == "b"]). 이것은 하위 집합을 작성하는보다 표준적인 방법입니다. .()에 대한 별칭 list()도 사용할 수 있습니다 by.

dt[, .(
    max.date = max(mydate),
    mean.val = mean(val[id.sub == "b"])),
    by = .(id, wk = format(mydate, "%Y-%V"))
]
#      id      wk   max.date   mean.val
#   1:  5 2009-01 2009-01-04  1.9335678
#   2:  2 2009-01 2009-01-03        NaN
#   3:  4 2009-02 2009-01-10  0.1603871
#   4:  3 2009-02 2009-01-11        NaN
#   5:  1 2009-02 2009-01-08        NaN
#  ---                                 
# 619:  3 2011-51 2011-12-24        NaN
# 620:  1 2011-52 2011-12-28        NaN
# 621:  4 2011-52 2011-12-29 -0.8534370
# 622:  2 2011-52 2011-12-31 -1.2628962
# 623:  3 2012-52 2012-01-01 -1.7779465

그룹화 된 모든 열을 살펴보면 시도가 작동하지 않은 이유를 알 수 있습니다.

names(dt[, .SD, by = .(id, wk = format(mydate, "%Y-%V"))])
# [1] "id"     "wk"     "id.sub" "val"   

보시다시피 mydate더 이상 존재하지 않습니다. 그 이유에 대한 기술적 설명을 제공 할 수 있을지 확신 할 수 없기 때문에 여기서 멈추겠습니다. akrun이 언급했듯이 수정 되었기 때문입니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

함수 내부에서 set_tag () 할 때 AzureRMR 개체를 찾을 수 없음

분류에서Dev

MuMIn 오류에서 준설 사용 : 개체를 찾을 수 없음

분류에서Dev

함수 내 평가에서 "개체를 찾을 수 없음 오류"

분류에서Dev

r의 사용자 정의 함수 : 개체를 찾을 수 없음

분류에서Dev

lapply 문제, 목록에서 데이터 프레임을 사용하려고 할 때 개체를 찾을 수 없음

분류에서Dev

R : 내 패키지 내에서 데이터 테이블 사용 : lapply (.SD, mean) 오류 : '.SD'개체를 찾을 수 없음

분류에서Dev

csv 데이터 세트에서 테이블을 만들려고 할 때 R에서 개체를 찾을 수 없음

분류에서Dev

Intelij에서 외부 라이브러리를 가져올 때 개체를 찾을 수 없음 오류

분류에서Dev

레코딩을 시도 할 때 돌연변이 오류-개체를 찾을 수 없음

분류에서Dev

DiagrammeR의 GrViz로 함수에서 인수를 전달하는 중 오류 : "개체를 찾을 수 없음"

분류에서Dev

R 3.5.2 : 사용자 지정 함수 내부 파이프- '열'개체를 찾을 수 없음

분류에서Dev

SpringBoot 사용자에게 권한이 없거나 개체를 찾을 수 없음 HSQLDB

분류에서Dev

java.sql.SQLSyntaxErrorException : 사용자에게 권한이 없거나 개체를 찾을 수 없음 : FIELD

분류에서Dev

foreach 루프에서 "개체를 찾을 수 없음"

분류에서Dev

R에서 'panel.bpplot'개체를 찾을 수 없음 오류

분류에서Dev

Lampp 우분투 13.10에서 개체를 찾을 수 없음

분류에서Dev

R에서 정렬 : 개체를 찾을 수 없음

분류에서Dev

Magento : localhost에서 개체를 찾을 수 없음

분류에서Dev

R : ggplot에서 개체를 찾을 수 없음

분류에서Dev

101 Cloud Code에서 개체를 찾을 수 없음-Parse Server

분류에서Dev

Parse에서 레코드를 업데이트 할 수 없습니다. 오류 : "업데이트 할 개체를 찾을 수 없음 (코드 : 101, 버전 : 1.2.16)"

분류에서Dev

"오류 : 레지스트리에서 'jupyter.widget'개체를 찾을 수 없음 '오류를 어떻게 해결할 수 있습니까?

분류에서Dev

개체를 찾을 수 없음-XAMPP

분류에서Dev

개체를 찾을 수 없음 r을 사용하여 부분 설정시 오류

분류에서Dev

9 월 초부터 시작된 "AADSTS700003 : 테넌트에서 장치 개체를 찾을 수 없음"문제

분류에서Dev

ggplot Shiny 대시 보드에서 입력 선택-오류 : 개체를 찾을 수 없음

분류에서Dev

dplyr 스타일 함수의 quo 및 enquo, ~ Sessions 오류 : 'Sessions'개체를 찾을 수 없음

분류에서Dev

자체 열 별칭을 참조하는 쿼리에 대한 UCanAccess "개체를 찾을 수 없음"오류

분류에서Dev

dplyr : 요약, 개체를 찾을 수 없음

Related 관련 기사

  1. 1

    함수 내부에서 set_tag () 할 때 AzureRMR 개체를 찾을 수 없음

  2. 2

    MuMIn 오류에서 준설 사용 : 개체를 찾을 수 없음

  3. 3

    함수 내 평가에서 "개체를 찾을 수 없음 오류"

  4. 4

    r의 사용자 정의 함수 : 개체를 찾을 수 없음

  5. 5

    lapply 문제, 목록에서 데이터 프레임을 사용하려고 할 때 개체를 찾을 수 없음

  6. 6

    R : 내 패키지 내에서 데이터 테이블 사용 : lapply (.SD, mean) 오류 : '.SD'개체를 찾을 수 없음

  7. 7

    csv 데이터 세트에서 테이블을 만들려고 할 때 R에서 개체를 찾을 수 없음

  8. 8

    Intelij에서 외부 라이브러리를 가져올 때 개체를 찾을 수 없음 오류

  9. 9

    레코딩을 시도 할 때 돌연변이 오류-개체를 찾을 수 없음

  10. 10

    DiagrammeR의 GrViz로 함수에서 인수를 전달하는 중 오류 : "개체를 찾을 수 없음"

  11. 11

    R 3.5.2 : 사용자 지정 함수 내부 파이프- '열'개체를 찾을 수 없음

  12. 12

    SpringBoot 사용자에게 권한이 없거나 개체를 찾을 수 없음 HSQLDB

  13. 13

    java.sql.SQLSyntaxErrorException : 사용자에게 권한이 없거나 개체를 찾을 수 없음 : FIELD

  14. 14

    foreach 루프에서 "개체를 찾을 수 없음"

  15. 15

    R에서 'panel.bpplot'개체를 찾을 수 없음 오류

  16. 16

    Lampp 우분투 13.10에서 개체를 찾을 수 없음

  17. 17

    R에서 정렬 : 개체를 찾을 수 없음

  18. 18

    Magento : localhost에서 개체를 찾을 수 없음

  19. 19

    R : ggplot에서 개체를 찾을 수 없음

  20. 20

    101 Cloud Code에서 개체를 찾을 수 없음-Parse Server

  21. 21

    Parse에서 레코드를 업데이트 할 수 없습니다. 오류 : "업데이트 할 개체를 찾을 수 없음 (코드 : 101, 버전 : 1.2.16)"

  22. 22

    "오류 : 레지스트리에서 'jupyter.widget'개체를 찾을 수 없음 '오류를 어떻게 해결할 수 있습니까?

  23. 23

    개체를 찾을 수 없음-XAMPP

  24. 24

    개체를 찾을 수 없음 r을 사용하여 부분 설정시 오류

  25. 25

    9 월 초부터 시작된 "AADSTS700003 : 테넌트에서 장치 개체를 찾을 수 없음"문제

  26. 26

    ggplot Shiny 대시 보드에서 입력 선택-오류 : 개체를 찾을 수 없음

  27. 27

    dplyr 스타일 함수의 quo 및 enquo, ~ Sessions 오류 : 'Sessions'개체를 찾을 수 없음

  28. 28

    자체 열 별칭을 참조하는 쿼리에 대한 UCanAccess "개체를 찾을 수 없음"오류

  29. 29

    dplyr : 요약, 개체를 찾을 수 없음

뜨겁다태그

보관