동일한 변수의 여러 값에서 R의 변수 계산

중립국

df라는 데이터 세트가 있고이 데이터 세트가 year와 x1이라는 두 개의 변수로 구성되어 있다고 가정 해보십시오.

year <- c(2000, 2001, 2002, 2003, 2004)
x1 <- c(7, 8, 6, 3, 3)
df <- data.frame(year, x1)

내 임무는 x1에서 두 개의 새로운 변수를 계산하는 것입니다. 첫 번째 변수는 cSum으로, 지난 2 년 동안 x1 값의 합계를 반영해야합니다. 두 번째 변수는 cMax로, 지난 3 년 동안 x1에 대한 가장 높은 값을 반영해야합니다.

결과는 다음과 같아야합니다.

year  x1  cSum  cMax
2000   7     
2001   8    15     
2002   6    14     8
2003   3     9     8
2004   3     6     6

위의 cSum 및 cMax 변수를 어떻게 계산할 수 있습니까?

감사!

MichaelChirico

사용 data.table:

library(data.table)
setDT(df)

첫째, 복잡한 방법입니다. 이후 transpose최적화되어,이 빠르게 (안된) 수 :

df[ , cSum := transpose(lapply(transpose(shift(x1, 0:1)), sum))]
df[ , cMax := transpose(lapply(transpose(shift(x1, 0:2)), max))]

shift본질적으로 지연 연산자입니다. cMax현재 및 이전 1 (또는 2) 기간을 가져 오기 위해 시차 0, 1 및 (for ) 2를 원합니다 .

또는 :

df[ , cSum := rowSums(do.call(cbind, shift(x1, 0:1)))]
df[ , cMax := do.call(pmax, shift(x1, 0:2))]

둘 다 동일한 출력을 제공합니다.

df
#    year x1 cSum cMax
# 1: 2000  7   NA   NA
# 2: 2001  8   15   NA
# 3: 2002  6   14    8
# 4: 2003  3    9    8
# 5: 2004  3    6    6

이것을 지저분하게 만드는 것은 shift하나 이상의 지연을 반환 할 때 a를 반환한다는 것입니다 list. 하지만 불행히도이 목록은 우리가 필요로하는 것의 전치입니다 (행 방식 연산을 수행하고 있으며 열 친화적 인 방식으로 생성됨). 첫 번째 옵션 transpose은 목록을보다 관리하기 쉬운 형식으로 만든 다음 열 transpose형식으로 돌아 가기 전에 행 단위 연산을 수행 합니다.

두 번째 옵션은 출력을 배열로 변환하고 배열에 대해 행 단위 연산을 수행합니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

동일한 변수의 여러 배열을 R에서 하나의 변수로 계산합니까?

분류에서Dev

다른 변수에 의한 여러 이진 변수의 비율 계산

분류에서Dev

단일 변수에 대한 여러 변수의 산점도

분류에서Dev

다른 변수로 부분 집합 된 여러 변수에 대한 특정 값의 개수 및 비율 계산

분류에서Dev

R의 시계열 : R의 여러 시계열 변수에 대한 고정 연도의 퍼센트 변화를 어떻게 계산합니까?

분류에서Dev

여러 열의 R에서 0보다 큰 값 수 계산

분류에서Dev

여러 xarray 변수의 평균 계산

분류에서Dev

Matlab에서 동일한 크기의 여러 변수 만들기

분류에서Dev

R의 여러 회사에 대한 연간 수익 계산

분류에서Dev

ID가 여러 행에서 동일한 경우에만 변동률 변수 계산

분류에서Dev

동시에 여러 변수에 대한 성장률 계산

분류에서Dev

Python의 동일한 DataFrame에있는 범주 형 변수 간의 중복 계산

분류에서Dev

Bash를 사용하여 파일의 문자 수 계산 및 변수에 할당

분류에서Dev

Bash의 속성 파일에서 지역 변수와 변수의 조합으로 변수에 여러 값 할당

분류에서Dev

지난 n 일 동안의 값 변경 횟수 계산

분류에서Dev

동일한 테이블의 여러 열에서 항목 계산

분류에서Dev

astropy에서 창의 변동 계수 계산

분류에서Dev

R에서 주어진 연산에 대한 쌍 변수의 조합 계산

분류에서Dev

여러 파일에있는 변수 간의 상관 관계

분류에서Dev

여러 변수가 R에서 모두 동일한 값인지 확인

분류에서Dev

R에서 table ()을 사용하여 데이터 프레임에서 다양한 길이의 변수 계산

분류에서Dev

여러 파일에 대해 동일한 계산 수행

분류에서Dev

여러 열 팬더에서 특정 값의 수를 계산

분류에서Dev

여러 개체에서 동일한 필드의 값 변경-JS

분류에서Dev

한 줄의 여러 변수에 여러 값 할당

분류에서Dev

여러 파일에서 여러 문자열의 발생 횟수 계산

분류에서Dev

일련의 정규 랜덤 변수에 대한 비율 계산

분류에서Dev

일련의 정규 랜덤 변수에 대한 비율 계산

분류에서Dev

purrr에서 map_ * 함수를 사용하여 여러 파일을 읽고 각각의 변수 수를 계산하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    동일한 변수의 여러 배열을 R에서 하나의 변수로 계산합니까?

  2. 2

    다른 변수에 의한 여러 이진 변수의 비율 계산

  3. 3

    단일 변수에 대한 여러 변수의 산점도

  4. 4

    다른 변수로 부분 집합 된 여러 변수에 대한 특정 값의 개수 및 비율 계산

  5. 5

    R의 시계열 : R의 여러 시계열 변수에 대한 고정 연도의 퍼센트 변화를 어떻게 계산합니까?

  6. 6

    여러 열의 R에서 0보다 큰 값 수 계산

  7. 7

    여러 xarray 변수의 평균 계산

  8. 8

    Matlab에서 동일한 크기의 여러 변수 만들기

  9. 9

    R의 여러 회사에 대한 연간 수익 계산

  10. 10

    ID가 여러 행에서 동일한 경우에만 변동률 변수 계산

  11. 11

    동시에 여러 변수에 대한 성장률 계산

  12. 12

    Python의 동일한 DataFrame에있는 범주 형 변수 간의 중복 계산

  13. 13

    Bash를 사용하여 파일의 문자 수 계산 및 변수에 할당

  14. 14

    Bash의 속성 파일에서 지역 변수와 변수의 조합으로 변수에 여러 값 할당

  15. 15

    지난 n 일 동안의 값 변경 횟수 계산

  16. 16

    동일한 테이블의 여러 열에서 항목 계산

  17. 17

    astropy에서 창의 변동 계수 계산

  18. 18

    R에서 주어진 연산에 대한 쌍 변수의 조합 계산

  19. 19

    여러 파일에있는 변수 간의 상관 관계

  20. 20

    여러 변수가 R에서 모두 동일한 값인지 확인

  21. 21

    R에서 table ()을 사용하여 데이터 프레임에서 다양한 길이의 변수 계산

  22. 22

    여러 파일에 대해 동일한 계산 수행

  23. 23

    여러 열 팬더에서 특정 값의 수를 계산

  24. 24

    여러 개체에서 동일한 필드의 값 변경-JS

  25. 25

    한 줄의 여러 변수에 여러 값 할당

  26. 26

    여러 파일에서 여러 문자열의 발생 횟수 계산

  27. 27

    일련의 정규 랜덤 변수에 대한 비율 계산

  28. 28

    일련의 정규 랜덤 변수에 대한 비율 계산

  29. 29

    purrr에서 map_ * 함수를 사용하여 여러 파일을 읽고 각각의 변수 수를 계산하는 방법은 무엇입니까?

뜨겁다태그

보관