R cut ()으로 빈 그룹 표시

에릭 스타이너

데이터 세트가 있습니다.

   Abweichung BW_Gesamt
76        236   1137747
77       2000   1149019
78       2000   1227972
79       2331   1346480
80       4000   2226810
81       5272   2874114
82       8585   4418070
83      15307   5389585

이제 그룹화하고 싶습니다. 어려움은 x 축의 MIN / MAX와 그룹 수를 입력하여 유연한 브레이크를 적용 할 수 있다는 것입니다. 따라서 데이터를 "MYSCHRTW"폭의 그룹으로 자릅니다.

bins <- 4 # Amount of groups
MYMIN <- 0
MYMAX <- 20000
MYSCHRTW <- (-MYMIN+MYMAX)%/%bins # Wide of one group 5000
GRENZEN <- seq(from = MYMIN, by = MYSCHRTW, length.out = bins)
GRENZEN <- c(GRENZEN, MYMAX+1) #Brakes: 0 5000 10000 15000 20001

잘라 내기 기능을 사용합니다.

setDT(mydata)[ , Gruppen := cut(mydata$Abweichung,breaks=GRENZEN,dig.lab = 5)]

문제는 하나의 그룹이 비어있어서 표시되지 않기 때문에 누락된다는 것입니다. 해당 그룹없이 데이터를 플로팅하면 결과가 편향 될 수 있으므로 Abweichung 및 BW_Gesamt 0을 사용하여 그룹 (10000,15000]을 추가하려면 어떻게해야합니까?

   Abweichung BW_Gesamt       Gruppen
1:        236   1137747      (0,5000]
2:       2000   1149019      (0,5000]
3:       2000   1227972      (0,5000]
4:       2331   1346480      (0,5000]
5:       4000   2226810      (0,5000]
6:       5272   2874114  (5000,10000]
7:       8585   4418070  (5000,10000]
8:      15307   5389585 (15000,20001]
에릭 스타이너

나는 스스로 답을 찾은 것 같습니다. 그래서 다음의 첫 게시물에서 계속하십시오.

setDT(mydata)[ , Gruppen := cut(mydata$Abweichung,breaks=GRENZEN,dig.lab = 5)]
> print(mydata)
   Abweichung BW_Gesamt       Gruppen
1:        236   1137747      (0,5000]
2:       2000   1149019      (0,5000]
3:       2000   1227972      (0,5000]
4:       2331   1346480      (0,5000]
5:       4000   2226810      (0,5000]
6:       5272   2874114  (5000,10000]
7:       8585   4418070  (5000,10000]
8:      15307   5389585 (15000,20000]

> class(mydata$Abweichung)
[1] "numeric"
> class(mydata$BW_Gesamt)
[1] "numeric"

library(dplyr)

mydata <- levels(mydata$Gruppen) %>%  #get distinct levels of the Gruppen variable
  data.frame(Gruppen = .) %>%  # create a data frame
  left_join(mydata %>%    # join with
              group_by(Gruppen) %>%    # for each value that exists
              summarise(Abweichung = n(), BW_Gesamt = sum(BW_Gesamt)), by = "Gruppen") %>%      # get occurrence of Abweichung and sum of BW_Gesamt just for fun 
  mutate(Abweichung = coalesce(Abweichung, 0L)) %>%  # replace NAs with 0s
  mutate(BW_Gesamt = coalesce(as.integer(BW_Gesamt), 0L))

> class(mydata$Abweichung)
[1] "integer"
> class(mydata$BW_Gesamt)
[1] "integer"

> print(mydata)
        Gruppen Abweichung BW_Gesamt
1      (0,5000]          5   7088028
2  (5000,10000]          2   7292184
3 (10000,15000]          0         0
4 (15000,20000]          1   5389585

Abweichung은 정수로 변경되고 BW_Gesamt는 숫자로 유지된다는 사실을 알았 기 때문에 Abweichung과 BW_Gesamt를 변경하는 데는 차이가 있습니다.

이 방법이 얼마나 효율적인지 모르겠습니다. 여기에서 찾았습니다. LINK AntoniosK 덕분에

누군가가 어떻게 최적화 할 수 있는지 아이디어를 가지고있을 수 있습니다. 제 생각에는 그룹의 결과를 바꾸는 장점이 있습니다. 그래서 BW_Gesamt의 합을 보여 주면서 동시에 Abweichung의 발생 횟수를 보여줄 수 있습니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

팬더 시리즈를 빈으로 그룹화

분류에서Dev

R의 각 그룹에 대한 값을 기반으로 빈 만들기

분류에서Dev

R data.table-그룹 별 날짜를 기준으로 열 표시 / 변경

분류에서Dev

AWS Log Insights 그래프에서 빈 빈을 0 값으로 표시

분류에서Dev

모든 그룹이 비어 있어도 빈 그룹 표시

분류에서Dev

R에서 잘라 내기 기능을 사용하여 데이터를 잘라낼 때 빈 그룹 표시

분류에서Dev

R 숫자 그룹으로 시작하는 행 찾기

분류에서Dev

R에서 그룹 문으로 신청 하시겠습니까?

분류에서Dev

R / dplyr 기능 : 그룹화 변수의 합계를 포함하는 빈도 표

분류에서Dev

백분율을 포함하고 그룹으로 구분 된 여러 변수에 대한 빈도 표

분류에서Dev

R : 그룹 기반 색상, NA 값이 회색으로 표시되고 문자가 포함 된 히트 맵

분류에서Dev

R dplyr에서 여러 열을 그룹 별 상대 빈도로 변환

분류에서Dev

R-다른 변수로 그룹화 된 빈도 분포의 중앙값

분류에서Dev

그룹으로 프로필에 게시물 표시

분류에서Dev

Magento는 빈 그룹 제품을 표시합니다.

분류에서Dev

ExpandableListView-빈 그룹 메시지

분류에서Dev

R data.table : 표현식으로 그룹화 할 때 열 유지

분류에서Dev

R 시간 간격 : 샘플이 시간 표시를 초과하는 경우 시간별로 그룹화

분류에서Dev

시간 그룹별로 그룹화하고 표시

분류에서Dev

시간 그룹별로 그룹화하고 표시

분류에서Dev

빈 줄로 구분 된 그룹 가입

분류에서Dev

sqlite의 누적 빈도로 그룹화

분류에서Dev

pandas 버킷 타임 스탬프를 TimeGrouper 빈도 그룹으로

분류에서Dev

목록의 값을 동일한 거리 빈으로 그룹화

분류에서Dev

그룹의 빈도 수를 기반으로 새 열 추가

분류에서Dev

스페이서로 그리드 빈 div를 표시합니까?

분류에서Dev

로그인 스크립트에 빈 페이지가 표시됨

분류에서Dev

로그인 양식 header ()에 빈 페이지가 표시됨

분류에서Dev

그룹별로 데이터 필터링 및 빈 그룹 유지

Related 관련 기사

  1. 1

    팬더 시리즈를 빈으로 그룹화

  2. 2

    R의 각 그룹에 대한 값을 기반으로 빈 만들기

  3. 3

    R data.table-그룹 별 날짜를 기준으로 열 표시 / 변경

  4. 4

    AWS Log Insights 그래프에서 빈 빈을 0 값으로 표시

  5. 5

    모든 그룹이 비어 있어도 빈 그룹 표시

  6. 6

    R에서 잘라 내기 기능을 사용하여 데이터를 잘라낼 때 빈 그룹 표시

  7. 7

    R 숫자 그룹으로 시작하는 행 찾기

  8. 8

    R에서 그룹 문으로 신청 하시겠습니까?

  9. 9

    R / dplyr 기능 : 그룹화 변수의 합계를 포함하는 빈도 표

  10. 10

    백분율을 포함하고 그룹으로 구분 된 여러 변수에 대한 빈도 표

  11. 11

    R : 그룹 기반 색상, NA 값이 회색으로 표시되고 문자가 포함 된 히트 맵

  12. 12

    R dplyr에서 여러 열을 그룹 별 상대 빈도로 변환

  13. 13

    R-다른 변수로 그룹화 된 빈도 분포의 중앙값

  14. 14

    그룹으로 프로필에 게시물 표시

  15. 15

    Magento는 빈 그룹 제품을 표시합니다.

  16. 16

    ExpandableListView-빈 그룹 메시지

  17. 17

    R data.table : 표현식으로 그룹화 할 때 열 유지

  18. 18

    R 시간 간격 : 샘플이 시간 표시를 초과하는 경우 시간별로 그룹화

  19. 19

    시간 그룹별로 그룹화하고 표시

  20. 20

    시간 그룹별로 그룹화하고 표시

  21. 21

    빈 줄로 구분 된 그룹 가입

  22. 22

    sqlite의 누적 빈도로 그룹화

  23. 23

    pandas 버킷 타임 스탬프를 TimeGrouper 빈도 그룹으로

  24. 24

    목록의 값을 동일한 거리 빈으로 그룹화

  25. 25

    그룹의 빈도 수를 기반으로 새 열 추가

  26. 26

    스페이서로 그리드 빈 div를 표시합니까?

  27. 27

    로그인 스크립트에 빈 페이지가 표시됨

  28. 28

    로그인 양식 header ()에 빈 페이지가 표시됨

  29. 29

    그룹별로 데이터 필터링 및 빈 그룹 유지

뜨겁다태그

보관