R의 시차로 데이터를 그룹화하는 방법은 무엇입니까?

조나단

posxict 열을 기반으로 데이터 세트를 그룹화하고 싶습니다. 관측치 간의 시간 차이가 이전 관측치와 비교하여 3 시간 이하인 경우 그룹화해야합니다. 그래서 이것은 내 데이터의 샘플입니다.

time                type      day month gas           response
   <dttm>              <chr>   <int> <dbl> <chr>            <dbl>
 1 2018-08-21 14:30:00 old_std    21     8 benzene_area 10260721 
 2 2018-08-21 15:30:00 old_std    21     8 benzene_area  2591905 
 3 2018-11-09 20:00:00 old_std     9    11 benzene_area   684166
 4 2018-11-09 23:00:00 old_std     9    11 benzene_area   589498
 5 2018-11-10 02:00:00 old_std    10    11 benzene_area   460714
 6 2018-11-10 05:00:00 old_std    10    11 benzene_area   490663
 7 2018-11-10 11:30:00 old_std    10    11 benzene_area   404947
 8 2018-11-10 14:30:00 old_std    10    11 benzene_area   402566
 9 2018-11-10 16:30:00 old_std    10    11 benzene_area   362376
10 2018-11-11 00:00:00 old_std    11    11 benzene_area   276184

그리고 이것이 제가 찾고있는 것입니다.

time                type      day month gas           response   group
   <dttm>              <chr>   <int> <dbl> <chr>            <dbl>
 1 2018-08-21 14:30:00 old_std    21     8 benzene_area 10260721   1
 2 2018-08-21 15:30:00 old_std    21     8 benzene_area  2591905   1
 3 2018-11-09 20:00:00 old_std     9    11 benzene_area   684166   2
 4 2018-11-09 23:00:00 old_std     9    11 benzene_area   589498   2
 5 2018-11-10 02:00:00 old_std    10    11 benzene_area   460714   2
 6 2018-11-10 05:00:00 old_std    10    11 benzene_area   490663   2
 7 2018-11-10 11:30:00 old_std    10    11 benzene_area   404947   3
 8 2018-11-10 14:30:00 old_std    10    11 benzene_area   402566   3
 9 2018-11-10 16:30:00 old_std    10    11 benzene_area   362376   3
10 2018-11-11 00:00:00 old_std    11    11 benzene_area   276184   4

나는 이와 같은 데이터를 그룹화하는 방법을 찾지 못했습니다. 어떤 아이디어?

로낙 샤

를 사용 lag하여 이전 값을 가져오고이를 사용 difftime하여 시간 차이를 가져오고 차이가 3 시간 이상일 때마다 그룹 값을 증가시킬 수 있습니다.

library(dplyr)
df %>%
        mutate(group = cumsum(difftime(time, lag(time, default = first(time)), 
                              units = "hours") > 3) + 1)

#                  time    type day month          gas response group
#1  2018-08-21 14:30:00 old_std  21     8 benzene_area 10260721     1
#2  2018-08-21 15:30:00 old_std  21     8 benzene_area  2591905     1
#3  2018-11-09 20:00:00 old_std   9    11 benzene_area   684166     2
#4  2018-11-09 23:00:00 old_std   9    11 benzene_area   589498     2
#5  2018-11-10 02:00:00 old_std  10    11 benzene_area   460714     2
#6  2018-11-10 05:00:00 old_std  10    11 benzene_area   490663     2
#7  2018-11-10 11:30:00 old_std  10    11 benzene_area   404947     3
#8  2018-11-10 14:30:00 old_std  10    11 benzene_area   402566     3
#9  2018-11-10 16:30:00 old_std  10    11 benzene_area   362376     3
#10 2018-11-11 00:00:00 old_std  11    11 benzene_area   276184     4

기본 R에서는 다음과 같습니다.

df$group <- cumsum(c(TRUE, difftime(df$time[-1], df$time[-nrow(df)],
                    units = "hours") > 3))

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

XML 데이터를 월로 그룹화하는 방법은 무엇입니까?

분류에서Dev

Google 시트 필터링을 수행하는 방법은 무엇입니까? 한 열의 데이터를 한 셀로 그룹화 하시겠습니까?

분류에서Dev

데이터 프레임의 행을 분기별로 그룹화하는 방법은 무엇입니까?

분류에서Dev

데이터 프레임의 값으로 그룹화하는 방법은 무엇입니까?

분류에서Dev

R에서 여러 열로 데이터를 내림차순으로 그룹화 한 다음 모든 그룹에 1부터 시작하는 인덱스를 제공하는 방법은 무엇입니까?

분류에서Dev

알 수없는 열 이름으로 데이터 테이블을 그룹화하고 한 필드의 합계를 계산하는 방법은 무엇입니까?

분류에서Dev

html 양식의 데이터로 d3.js 차트를 다시 그리는 방법은 무엇입니까?

분류에서Dev

html 양식의 데이터로 d3.js 차트를 다시 그리는 방법은 무엇입니까?

분류에서Dev

그룹화 변수를 R의 열로 변환하는 방법은 무엇입니까?

분류에서Dev

stdout의 데이터를 그래프로 시각화하는 가장 쉬운 방법은 무엇입니까?

분류에서Dev

이 Pandas 데이터 프레임의 차이를 그룹화, 정렬 및 계산하는 방법은 무엇입니까?

분류에서Dev

R에서 상위 2 개로 그룹화해야하는 4 개의 열로 데이터 프레임을 그리는 방법은 무엇입니까?

분류에서Dev

데이터를 그룹별로 표시하는 방법은 무엇입니까?

분류에서Dev

R에서 XTS 개체를 시간별로 그룹화하는 방법은 무엇입니까?

분류에서Dev

다른 수의 반환 값을 반환하는 다른 함수로 그룹화 된 데이터를 요약하는 방법은 무엇입니까?

분류에서Dev

값으로 개체의 데이터를 그룹화하고 키 개체에 특정 이름을 지정하는 방법은 무엇입니까?

분류에서Dev

CSV 파일의 데이터를 클러스터링 (또는 그룹화)하는 방법은 무엇입니까?

분류에서Dev

Python의 Pandas 데이터 프레임의 열을 기준으로 내림차순으로 그룹화하는 방법은 무엇입니까? (Jupyter 노트북)

분류에서Dev

두 개의 열 레이블로 그룹화 된 데이터 프레임 열의 RMS를 계산하는 방법은 무엇입니까?

분류에서Dev

Rails-데이터베이스의 레코드를 문자열로 그룹화 / 매핑하는 방법은 무엇입니까?

분류에서Dev

geom_dotplot의 범주 형 데이터로 점을 그룹화하고 열당 점 수를 제한하는 방법은 무엇입니까?

분류에서Dev

R에서 빅 데이터의 결 측값 시각화를 그리는 방법은 무엇입니까?

분류에서Dev

Entity Framework에서 모든 사람의 데이터를 개별적으로 그룹화하는 방법은 무엇입니까?

분류에서Dev

R에서 데이터 프레임의 기존 차원에 영향을주지 않고 작업 (평균)별로 데이터를 날짜별로 그룹화하는 방법은 무엇입니까?

분류에서Dev

그룹화 된 행의 모든 열 데이터를 연결하는 방법은 무엇입니까?

분류에서Dev

ASP.NET MVC Razor에서 그룹화 된 데이터를 표시하는 방법은 무엇입니까?

분류에서Dev

목록의 속성별로 개체를 그룹화하고 계산하는 방법은 무엇입니까?

분류에서Dev

그룹별로 데이터를 분할하는 방법은 무엇입니까?

분류에서Dev

MongoDB 데이터를 속성별로 그룹화하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    XML 데이터를 월로 그룹화하는 방법은 무엇입니까?

  2. 2

    Google 시트 필터링을 수행하는 방법은 무엇입니까? 한 열의 데이터를 한 셀로 그룹화 하시겠습니까?

  3. 3

    데이터 프레임의 행을 분기별로 그룹화하는 방법은 무엇입니까?

  4. 4

    데이터 프레임의 값으로 그룹화하는 방법은 무엇입니까?

  5. 5

    R에서 여러 열로 데이터를 내림차순으로 그룹화 한 다음 모든 그룹에 1부터 시작하는 인덱스를 제공하는 방법은 무엇입니까?

  6. 6

    알 수없는 열 이름으로 데이터 테이블을 그룹화하고 한 필드의 합계를 계산하는 방법은 무엇입니까?

  7. 7

    html 양식의 데이터로 d3.js 차트를 다시 그리는 방법은 무엇입니까?

  8. 8

    html 양식의 데이터로 d3.js 차트를 다시 그리는 방법은 무엇입니까?

  9. 9

    그룹화 변수를 R의 열로 변환하는 방법은 무엇입니까?

  10. 10

    stdout의 데이터를 그래프로 시각화하는 가장 쉬운 방법은 무엇입니까?

  11. 11

    이 Pandas 데이터 프레임의 차이를 그룹화, 정렬 및 계산하는 방법은 무엇입니까?

  12. 12

    R에서 상위 2 개로 그룹화해야하는 4 개의 열로 데이터 프레임을 그리는 방법은 무엇입니까?

  13. 13

    데이터를 그룹별로 표시하는 방법은 무엇입니까?

  14. 14

    R에서 XTS 개체를 시간별로 그룹화하는 방법은 무엇입니까?

  15. 15

    다른 수의 반환 값을 반환하는 다른 함수로 그룹화 된 데이터를 요약하는 방법은 무엇입니까?

  16. 16

    값으로 개체의 데이터를 그룹화하고 키 개체에 특정 이름을 지정하는 방법은 무엇입니까?

  17. 17

    CSV 파일의 데이터를 클러스터링 (또는 그룹화)하는 방법은 무엇입니까?

  18. 18

    Python의 Pandas 데이터 프레임의 열을 기준으로 내림차순으로 그룹화하는 방법은 무엇입니까? (Jupyter 노트북)

  19. 19

    두 개의 열 레이블로 그룹화 된 데이터 프레임 열의 RMS를 계산하는 방법은 무엇입니까?

  20. 20

    Rails-데이터베이스의 레코드를 문자열로 그룹화 / 매핑하는 방법은 무엇입니까?

  21. 21

    geom_dotplot의 범주 형 데이터로 점을 그룹화하고 열당 점 수를 제한하는 방법은 무엇입니까?

  22. 22

    R에서 빅 데이터의 결 측값 시각화를 그리는 방법은 무엇입니까?

  23. 23

    Entity Framework에서 모든 사람의 데이터를 개별적으로 그룹화하는 방법은 무엇입니까?

  24. 24

    R에서 데이터 프레임의 기존 차원에 영향을주지 않고 작업 (평균)별로 데이터를 날짜별로 그룹화하는 방법은 무엇입니까?

  25. 25

    그룹화 된 행의 모든 열 데이터를 연결하는 방법은 무엇입니까?

  26. 26

    ASP.NET MVC Razor에서 그룹화 된 데이터를 표시하는 방법은 무엇입니까?

  27. 27

    목록의 속성별로 개체를 그룹화하고 계산하는 방법은 무엇입니까?

  28. 28

    그룹별로 데이터를 분할하는 방법은 무엇입니까?

  29. 29

    MongoDB 데이터를 속성별로 그룹화하는 방법은 무엇입니까?

뜨겁다태그

보관