젖소의 우유 내 MUN (milk urea nitrogen)은 사료단백질의 이용성과 에너지 공급상태를 간접적으로 판단하는데 매우 유용하게 사용될 수 있습니다. 일반적으로 젖소능력검정사업에 참여하는 낙농목장에서는 매달 개체의 MUN과 유단백질(MP; milk protein) 등의 분석결과를 받아 볼 수 있는데, 전체 우군의 MUN-MP 변화를 관찰함으로써 에너지와 사료단백질의 균형을 평가해 볼 수 있습니다.

기본적으로 종축개량협회에서 검정성적조회를 통해 MUN-MP의 적정 비율에 대한 시각화 자료를 제공하지만, dairyCattle 패키지를 이용하면 조금 더 세련된 그림을 얻을 수 있습니다. 또한 gganimate과 dairyCattle 패키지를 이용한다면 월별 변화 패턴을 애니메이션으로 확인할 수도 있습니다.

먼저 필요한 패키지를 로딩해줍니다(패키지 설치에 대한 설명은 생략하겠습니다).

library(dairyCattle)
library(dplyr)
library(gganimate)

다음으로 젖소 검정성적 파일을 로딩해줍니다. dairyCattle 패키지는 종축개량협회의 검정데이터 엑셀파일(xls)을 불러오는 함수를 내장하고 있습니다. drop.zero 옵션을 이용한다면 유량이 0인 개체의 자료를 제외할 수 있고, add 옵션을 통해 4% FCM, 비유단계, 분만예정일 등의 정보를 자동으로 추가할 수 있습니다.

df <- read_cattle(path = "검정성적.xls", drop.zero = TRUE, add = TRUE)

파일을 로딩한 이후 기본 그래프를 그릴 수 있습니다. mun_mp() 함수를 사용하면 자동으로 그래프를 생성해 줍니다.

mun_mp(data = df, grid = FALSE, line = TRUE, density = TRUE, text = FALSE)

grid옵션을 이용하면 초산과 경산우를 나누어 볼 수 있습니다.

mun_mp(data = df, grid = TRUE, line = TRUE, density = TRUE, text = FALSE)

다음과같은 코딩을 통해 시간이 경과함에 따른 우군의 MUN과 MP의 변화추세를 볼 수 있습니다. 여기에 사용된 데이터의 경우, 여러달의 검정성적을 일렬로 붙여 사용하였습니다.

mun_mp(data = df, grid = TRUE, line = TRUE, density = TRUE, text = FALSE) +
  labs(title = 'Date: {frame_time}', x = 'MUN', y = 'Milk protein') +
  transition_time(검정일) +
  ease_aes('linear')

이외에도 dairyCattle 패키지에서는 우군의 유량곡선이라던지, 유지방-유단백 분석 등 젖소의 검정성적을 분석할 수 있는 다양한 기능을 제공하고 있습니다. 자세한 내용들은 개발자의 Github에서 확인해 볼 수 있습니다.