for 루프를 사용하여 데이터 테이블에 여러 열 만들기

진 연어

내 데이터 테이블은 다음과 같습니다.

head(data)
    Date         AI   AGI      ADI   ASI   ARI   ERI   NVRI  SRI   FRI  IRI
1: 1991-09-06    NA 2094.19    NA    NA    NA    NA    NA    NA    NA    NA
2: 1991-09-13    NA 2204.94    NA    NA    NA    NA    NA    NA    NA    NA
3: 1991-09-20    NA 2339.10    NA    NA    NA    NA    NA    NA    NA    NA
4: 1991-09-27    NA 2387.81    NA    NA    NA    NA    NA    NA    NA    NA
5: 1991-10-04    NA 2459.94    NA    NA    NA    NA    NA    NA    NA    NA
6: 1991-10-11    NA 2571.07    NA    NA    NA    NA    NA    NA    NA    NA

NA에 대해 걱정하지 마십시오. 내가 원하는 것은 날짜를 제외한 각 열에 대해 "% 변경"열을 만드는 것입니다.

지금까지 내가 한 것은 :

names_no_date <- unique(names(data))[!unique(names(data)) %in% "Date"]

for (i in names_no_date){
      data_ch <- data[, paste0(i, "ch") := i/shift(i, n = 1, type = "lag")-1]}

오류가 발생합니다.

Error in i/shift(i, n = 1, type = "lag") : 
  non-numeric argument to binary operator

이 오류를 어떻게 해결할 수 있는지 궁금합니다.

웡 웨이 황

i문자열이므로 문자열을 다음과 같이 나누려고합니다 i/shift(i, n = 1, type = "lag").

> "AI"/NA
Error in "AI"/NA : non-numeric argument to binary operator

대신

for (i in names_no_date){
      data[, paste0(i, "ch") := get(i)/shift(get(i), n = 1, type = "lag")-1]
}

또한 변수에 저장된 이름으로 data.table 열 참조를 참조하십시오 .


편집 : @Frank는 OP의 출력을 생성하는 더 간결한 방법이 주석에 씁니다.

data[, paste0(names_no_date, "_pch") := .SD/shift(.SD) - 1, .SDcols=names_no_date]

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

테이블에서 PHP 루프를 사용하여 4 개의 열 만들기

분류에서Dev

VBA를 사용하여 여러 열에서 2 열 테이블 만들기

분류에서Dev

vue에서 루프를 사용하여 데이터 배열 만들기

분류에서Dev

jQuery를 사용하여 테이블에서 배열 만들기

분류에서Dev

판다 for 루프를 사용하여 여러 데이터 프레임 만들기

분류에서Dev

Python에서 데이터 콘텐츠를 열로 사용하여 테이블 만들기

분류에서Dev

PHP에서 for 루프를 사용하여 여러 DIV 컨테이너 만들기

분류에서Dev

for 루프 HTML JavaScript를 사용하여 동적 데이터에 대한 동적 테이블 만들기

분류에서Dev

dfList를 사용하여 여러 데이터 프레임에 걸쳐 새 열 만들기

분류에서Dev

For 루프를 사용하여 R의 목록에있는 각 데이터 세트에 열 만들기

분류에서Dev

exceljs를 사용하여 데이터 테이블 만들기

분류에서Dev

루프를 사용하여 R에서 ICC 결과로 테이블 만들기

분류에서Dev

SQL : 루프에서 변수를 사용하여 새 테이블 만들기

분류에서Dev

np.vectorize를 사용하여 데이터 프레임에 열 만들기

분류에서Dev

루프를 사용하여 열을 채워야하는 동적 Gridview 테이블 만들기

분류에서Dev

여러 SELECT를 사용하여 새 테이블 만들기

분류에서Dev

FMDB Swift를 사용하여 여러 테이블 만들기

분류에서Dev

여러 테이블의 열에서 새 테이블 만들기

분류에서Dev

데이터 프레임의 여러 열에 대한 배포 테이블 만들기

분류에서Dev

루프를 사용하여 데이터 쿼리에서 여러 테이블을 만드는 방법

분류에서Dev

JavaScript에서 JSON 데이터를 사용하여 HTML 테이블 만들기

분류에서Dev

데이터 프레임에서 for 루프를 사용하여 여러 플롯 만들기

분류에서Dev

Python 2.7에서 for 루프를 사용하여 여러 데이터 프레임 만들기

분류에서Dev

루프 또는 목록 이해를 사용하여 여러 팬더 데이터 프레임 만들기

분류에서Dev

루프를 사용하여 pyspark 데이터 프레임에 여러 열 추가

분류에서Dev

행의 데이터를 기반으로 여러 열 만들기

분류에서Dev

for 루프를 사용하여 테이블에 배열 삽입

분류에서Dev

루프를 사용하여 테이블에서 열 추출

분류에서Dev

루프를 사용하여 여러 Pandas 데이터 프레임 열 호출

Related 관련 기사

  1. 1

    테이블에서 PHP 루프를 사용하여 4 개의 열 만들기

  2. 2

    VBA를 사용하여 여러 열에서 2 열 테이블 만들기

  3. 3

    vue에서 루프를 사용하여 데이터 배열 만들기

  4. 4

    jQuery를 사용하여 테이블에서 배열 만들기

  5. 5

    판다 for 루프를 사용하여 여러 데이터 프레임 만들기

  6. 6

    Python에서 데이터 콘텐츠를 열로 사용하여 테이블 만들기

  7. 7

    PHP에서 for 루프를 사용하여 여러 DIV 컨테이너 만들기

  8. 8

    for 루프 HTML JavaScript를 사용하여 동적 데이터에 대한 동적 테이블 만들기

  9. 9

    dfList를 사용하여 여러 데이터 프레임에 걸쳐 새 열 만들기

  10. 10

    For 루프를 사용하여 R의 목록에있는 각 데이터 세트에 열 만들기

  11. 11

    exceljs를 사용하여 데이터 테이블 만들기

  12. 12

    루프를 사용하여 R에서 ICC 결과로 테이블 만들기

  13. 13

    SQL : 루프에서 변수를 사용하여 새 테이블 만들기

  14. 14

    np.vectorize를 사용하여 데이터 프레임에 열 만들기

  15. 15

    루프를 사용하여 열을 채워야하는 동적 Gridview 테이블 만들기

  16. 16

    여러 SELECT를 사용하여 새 테이블 만들기

  17. 17

    FMDB Swift를 사용하여 여러 테이블 만들기

  18. 18

    여러 테이블의 열에서 새 테이블 만들기

  19. 19

    데이터 프레임의 여러 열에 대한 배포 테이블 만들기

  20. 20

    루프를 사용하여 데이터 쿼리에서 여러 테이블을 만드는 방법

  21. 21

    JavaScript에서 JSON 데이터를 사용하여 HTML 테이블 만들기

  22. 22

    데이터 프레임에서 for 루프를 사용하여 여러 플롯 만들기

  23. 23

    Python 2.7에서 for 루프를 사용하여 여러 데이터 프레임 만들기

  24. 24

    루프 또는 목록 이해를 사용하여 여러 팬더 데이터 프레임 만들기

  25. 25

    루프를 사용하여 pyspark 데이터 프레임에 여러 열 추가

  26. 26

    행의 데이터를 기반으로 여러 열 만들기

  27. 27

    for 루프를 사용하여 테이블에 배열 삽입

  28. 28

    루프를 사용하여 테이블에서 열 추출

  29. 29

    루프를 사용하여 여러 Pandas 데이터 프레임 열 호출

뜨겁다태그

보관