별 쓸데없지만 재밌는 패키지를 하나 소개하고자 합니다. 그 이름하여 cowsay! 유래에 대한 내용은 영문위키를 참고하시면 좋을 것 같습니다.

일단 설치를 하고

install.packages("cowsay")

라이브러리를 불러옵니다.

library(cowsay)

cowsay 패키지니까 cow에게 말을 시켜보겠습니다.

say(by="cow")
##
##  -----
## Hello world!
##  ------
##     \   ^__^
##      \  (oo)\ ________
##         (__)\         )\ /\
##              ||------w|
##              ||      ||

기본적으로 say(what = "하고싶은 말", by = "동물이름")을 입력하면 됩니다. 동물(사실 동물만 있지 않습니다.. 가령 poop이라던가 ghost라던가..)의 종류는 cow, chicken, poop, cat, facecat, bigcat, longcat, shortcat, behindcat, longtailcat, anxiouscat, grumpycat, smallcat, ant, pumpkin, ghost, spider, rabbit, pig, snowman, frog, hypnotoad, signbunny, stretchycat, fish, trilobite, shark, buffalo, clippy, mushroom, monkey, or rms 등등 이렇게 다양한데 일부 동물은 윈도우 환경에서는 지원하지 않습니다. 만약 다른 동물 이름과 첫글자가 겹쳐지지 않는다면 맨 처음 알파벳 하나만 넣어도 괜찮습니다.

마스터 요다의 명대사인 Do, or do not. There is no 'try'를 테스트해봤습니다.

say(what="Do, or do not. There is no \'try\'",by="yoda")
##
##
##
##  -----
## Do, or do not. There is no 'try'
##  ------
##     \
##      \
##                    ____
##                 _.' :  `._
##             .-.'`.  ;   .'`.-.
##    __      / : ___\ ;  /___ ; \      __
##   ,'_ ""--.:__;".-.";: :".-.":__;.--"" _`,
##   :' `.t""--.. '<@.`;_  ',@>` ..--""j.' `;
##        `:-.._J '-.-'L__ `-- ' L_..-;'
##           "-.__ ;  .-"  "-.  : __.-"
##              L ' /.------.\ ' J
##              "-.   "--"   .-"
##              __.l"-:_JL_;-";.__
##          .-j/'.;  ;""""  / .'\"-.
##          .' /:`. "-.:     .-" .';  `.
##       .-"  / ;  "-. "-..-" .-"  :    "-.
##   .+"-.  : :      "-.__.-"      ;-._   \
##   ; \  `.; ;                    : : "+. ;
##   :  ;   ; ;                    : ;  : \:
##   ;  :   ; :                    ;:   ;  :
##   : \  ;  :  ;                  : ;  /  ::
##   ;  ; :   ; :                  ;   :   ;:
##   :  :  ;  :  ;                : :  ;  : ;
##   ;\    :   ; :                ; ;     ; ;
##   : `."-;   :  ;              :  ;    /  ;
##  ;    -:   ; :              ;  : .-"   :
##   :\     \  :  ;            : \.-"      :
##   ;`.    \  ; :            ;.'_..--  / ;
##   :  "-.  "-:  ;          :/."      .'  :
##    \         \ :          ;/  __        :
##     \       .-`.\        /t-""  ":-+.   :
##      `.  .-"    `l    __/ /`. :  ; ; \  ;
##        \   .-" .-"-.-"  .' .'j \  /   ;/
##         \ / .-"   /.     .'.' ;_:'    ;
##   :-""-.`./-.'     /    `.___.'
##                \ `t  ._  /  bug
##                 "-.t-._:'
## 

닮았나요?

개발자는 친절하게도 결정장애가 있으신 분들을 위해 by="random" 옵션을 넣어놓았습니다.

set.seed(12345)
say(what="random test",by="random")
##
##
##  --------------
## random test
##  --------------
##     \
##       \
##         \
##                    _.-````'-,_
##          _,.,_ ,-'`           `'-.,_
##        /)     (                   '``-.
##       ((      ) )                      `\
##         \)    (_/                        )\
##         |       /)           '    ,'    / \
##         `\    ^'            '     (    /  ))
##           |      _/\ ,     /    ,,`\   (  "`
##           \Y,   |   \  \  | ````| / \_ \
##             `)_/      \  \  )    ( >  ( >
##                        \( \(     |/   |/
##           mic & dwb  /_(/_(    /_(  /_(
## 

fortune 옵션을 이용해 fortunes 패키지에 있는 명언(?)을 가져올 수도 있습니다.

say(by="random",fortune="random")
##
##
##  -------------
## I strongly suggest you collaborate with a local statistician. I can think of no circumstance where multiple regression on "hundreds of thousands of variables" is anything more than a fancy random number generator.
##  Berton Gunter
##  R-help
##  February 2008
##  --------------
##               \
##                \
##                 \
## _____________________                              _____________________
## `-._                 \           |\__/|           /                 _.-'
##     \                 \          |    |          /                 /
##      \                 `-_______/      \_______-'                 /
##       |                                                          |
##       |                                                          |
##       |                                                          |
##       /                                                          \
##      /_____________                                  _____________\
##                    `----._                    _.----'
##                           `--.            .--'
##                               `-.      .-'
##                                  \    / :F_P:
##                                   \  /
##                                    \/

서두에 이야기 했던 것처럼 별 쓸데없는 패지키일 수도 있겠지만, 사실 우리네 삶을 구성하는 대부분의 것들은 꼭 유용하지만은 않죠(가령 R로 지뢰 찾기를 한다던가 오목을 둔다던가…)