[R] R ๊ธฐ์ดˆ

๊น€๋ฏผ์ˆ˜ยท2023๋…„ 4์›” 17์ผ

R

๋ชฉ๋ก ๋ณด๊ธฐ
1/2
post-thumbnail

๐Ÿ“Œ R ๊ธฐ์ดˆ

1. ๋ณ€์ˆ˜, ์ž๋ฃŒํ˜•

1) ๋ณ€์ˆ˜

  • ๋ณ€์ˆ˜ ์ด๋ฆ„ ๊ทœ์น™
    • ์‚ฌ์šฉ ๊ฐ€๋Šฅ
      • ์•ŒํŒŒ๋ฒณ, ์ˆซ์ž, _(์–ธ๋”์Šค์ฝ”์–ด), .(๋งˆ์นจํ‘œ) ๋“ฑ
    • ์‚ฌ์šฉ ๋ถˆ๊ฐ€
      • -(ํ•˜์ดํ”ˆ)
  • ๋ณ€์ˆ˜๊ฐ’ ํ• ๋‹น ๊ทœ์น™
    • <-, <<-, = ์—ฐ์‚ฐ์ž ์‚ฌ์šฉ

2) ๋ณ€์ˆ˜ ํ˜•ํƒœ

  • ์Šค์นผ๋ผ

    • ๋‹จ์ผ ์ฐจ์›์˜ ๊ฐ’

    • ์Šค์นผ๋ผ ๋ฐ์ดํ„ฐ๋Š” ๊ธธ์ด๊ฐ€ 1์ธ ๋ฒกํ„ฐ

    • NA์™€ NULL ๋น„๊ต

      • NA: ๋ณ€์ˆ˜๊ฐ’์„ ๋ชจ๋ฅผ ๋•Œ ์‚ฌ์šฉ / is.na(): NA๊ฐ’์ด ์žˆ๋Š”์ง€ ํ™•์ธ
      • NULL: ๋ณ€์ˆ˜๊ฐ€ ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š์•˜์„๋•Œ ์‚ฌ์šฉ / is.null(): NULL๊ฐ’์ด ์ €์žฅ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ
    • ์ง„๋ฆฟ๊ฐ’
      - TRUE, FALSE
      - ์—ฐ์‚ฐ์ž
      - AND(&)
      - OR(|)
      - NOT(!)
      - &,!์™€ &&, !!์˜ ์ฐจ์ด

    • ํŒฉํ„ฐ
      - ๋ฒ”์ฃผํ˜• ๋ฐ์ดํ„ฐ(์ž๋ฃŒ)๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…
      - ๋ ˆ๋ฒจ(level): ๋ฒ”์ฃผํ˜• ๋ณ€์ˆ˜๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์˜ ๋ชฉ๋ก
      - ๊ด€๋ จ ํ•จ์ˆ˜
      - factor: ํŽ™ํ„ฐ์˜ ๊ฐ’ ์ƒ์„ฑ
      - nlevels: ๋ ˆ๋ฒจ์˜ ๊ฐœ์ˆ˜ ๋ฐ˜ํ™˜
      - levels: ๋ ˆ๋ฒจ์˜ ์ข…๋ฅ˜ ๋ฐ˜ํ™˜
      - is.factor: ํŒฉํ„ฐ์ธ์ง€ ์•„๋‹Œ์ง€ ํ™•์ธ
      - ordered: ์ˆœ์„œํ˜• ํŒฉํ„ฐ ์ƒ์„ฑ
      - is.ordered: ์ˆœ์„œํ˜• ํŒฉํ„ฐ์ธ์ง€ ์•„๋‹Œ์ง€ ํ™•์ธ

  • ๋ฒกํ„ฐ

    • ๋ฐ์ดํ„ฐ ์ ‘๊ทผ
      • x[n]: ๋ฒกํ„ฐ x์˜ n๋ฒˆ์งธ ์š”์†Œ
      • x[-n]: n๋ฒˆ์งธ ์š”์†Œ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€
      • x[start:end]: start๋ถ€ํ„ฐ end๊นŒ์ง€์˜ ๊ฐ’
      • length: ๊ฐ์ฒด์˜ ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜
      • NROW: ๋ฐฐ์—ด์˜ ํ–‰ ๋˜๋Š” ์—ด์˜ ์ˆ˜ ๋ฐ˜ํ™˜
    • ์—ฐ์‚ฐ์ž
      • value %in%": ๋ฒกํ„ฐ x์— value๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š”์ง€ ํŒ๋‹จ
      • x + n: ๋ฒกํ„ฐ x์˜ ๋ชจ๋“  ์š”์†Œ์— n์˜ ๊ฐ’ ๋”ํ•จ(*, /, - ๋“ฑ ์‚ฌ์šฉ๊ฐ€๋Šฅ)
    • ์‹œํ€€์Šค ์ƒ์„ฑ
      • seq(from, end, by): from๋ถ€ํ„ฐ end๊นŒ์ง€์˜ ์ˆซ์ž๋ฅผ ์ €์žฅํ•œ ๋ฒกํ„ฐ ๋ฐ˜ํ™˜
    • ์ƒ์„ฑ ํ•จ์ˆ˜
      • rep(x, times, each): x=๋ฒกํ„ฐ, times=์ „์ฒด ๋ฒกํ„ฐ์˜ ๋ฐ˜๋ณตํšŸ์ˆ˜, each: ๊ฐœ๋ณ„ ๊ฐ’์˜ ๋ฐ˜๋ณตํšŸ์ˆ˜
  • ๋ฆฌ์ŠคํŠธ

    • '(ํ‚ค,๊ฐ’)' ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๋Š” ์—ฐ๊ด€ ๋ฐฐ์—ด
    • ๋ฒกํ„ฐ์™€ ๋‹ฌ๋ฆฌ ๊ฐ’์ด ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋‹ด์„ ์ˆ˜ ์žˆ์Œ
  • ํ–‰๋ ฌ

    • ํ–‰๋ ฌ ์ƒ์„ฑ
      • matrix()
    • ๋ฐ์ดํ„ฐ ์ ‘๊ทผ
    • ํ–‰๋ ฌ ์—ฐ์‚ฐ
  • ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„

    • ์ฒ˜๋ฆฌํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์—‘์…€์˜ ์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ์™€ ๊ฐ™์ด ํ‘œ ํ˜•ํƒœ๋กœ ์ •๋ฆฌ
      • str(): ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„์˜ ์ €์žฅ๊ตฌ์กฐ๋ฅผ ํ™•์ธ
      • ์ด๋ฏธ ์ •์˜๋œ ํ”„๋ ˆ์ž„์˜ ๊ฐ’ ๋ณ€๊ฒฝ
      • ์ƒˆ๋กœ์šด ์—ด ์ถ”๊ฐ€
      • ํ–‰, ์—ด ์ด๋ฆ„ ์ง€์ •
      • ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ•จ์ˆ˜
        • head(): ๊ฐ์ฒด ์ฒ˜์Œ๋ถ€๋ถ„ ํ˜ธ์ถœ
        head(
        	x, # ๊ฐ์ฒด
        	n=6L # ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ๊ฐ’์˜ ํฌ๊ธฐ
          )
        • tail(): ๊ฐ์ฒด ๋งˆ์ง€๋ง‰๋ถ€๋ถ„ ํ˜ธ์ถœ
        tail(
        	x, # ๊ฐ์ฒด
        	n=6L # ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ๊ฐ’์˜ ํฌ๊ธฐ
          )
        • View(): ๋ฐ์ดํ„ฐ ๋ทฐ์–ด๋ฅผ ํ˜ธ์ถœ
        View(
        	x, # ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์œผ๋กœ ๊ฐ•์ œ ํ˜•๋ณ€ํ™˜ํ•œ ๋ฐ์ดํ„ฐ
        	title # ๋ทฐ์–ด ์œˆ๋„์šฐ์˜ ์ œ๋ชฉ
          )

2. ์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ, ํ•จ์ˆ˜

  • ์กฐ๊ฑด๋ฌธ

    • if๋ฌธ

  • ๋ฐ˜๋ณต๋ฌธ

    • for๋ฌธ

    • while๋ฌธ


  • ํ•จ์ˆ˜

  • ์Šค์ฝ”ํ”„

3. ๋ฐ์ดํ„ฐ ์กฐ์ž‘

  • ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ํ–‰๊ณผ ์ปฌ๋Ÿผ ํ•ฉ์น˜๊ธฐ

    • rbind: ์ง€์ •ํ•œ ๋ฐ์ดํ„ฐ๋“ค์„ ํ–‰์œผ๋กœ ์ทจ๊ธ‰ํ•ด ํ•ฉ์นœ๋‹ค
    • cbind: ์ง€์ •ํ•œ ๋ฐ์ดํ„ฐ๋“ค์„ ์ปฌ๋Ÿผ์œผ๋กœ ์ทจ๊ธ‰ํ•ด ํ•ฉ์นœ๋‹ค
  • apply ํ•จ์ˆ˜

    • apply(): ํ–‰๋ ฌ์˜ ํ–‰ ๋˜๋Š” ์—ด ๋ฐฉํ–ฅ์œผ๋กœ ํŠน์ • ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜๋Š”๋ฐ ์‚ฌ์šฉ
    • lapply(): ๊ฒฐ๊ณผ๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ๋ณ€ํ™˜
    • sapply(): ๋ฆฌ์ŠคํŠธ ๋Œ€์‹  ๊ฒฐ๊ณผ๋ฅผ ๋ฐฑํ„ฐ ๋˜๋Š” ํ–‰๋ ฌ๋กœ ๋ณ€ํ™˜
    • tapply(): ๊ทธ๋ฃน๋ณ„๋กœ ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•œ ํ•จ์ˆ˜
    • mapply(): ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ์ˆ˜์˜ ์ธ์ž๋กœ ์ ์šฉ
  • ํ•จ์ˆ˜ ํ˜ธ์ถœ

    • summary(): ์ž๋ฃŒ๊ฐ€ ์ธ์ž๋กœ ์ฃผ์–ด์ง€๋ฉด ๊ฐ„๋žตํ•œ ํ†ต๊ณ„์š”์•ฝ์„, ๋ชจ๋ธ์ด ์ธ์ž๋กœ ์ฃผ์–ด์ง€๋ฉด ๋ชจ๋ธ์— ๋Œ€ํ•œ ์š”์•ฝ์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐฉ์‹
    • quantile(): ์ˆ˜์น˜ํ˜• ์ž๋ฃŒ์˜ ๋ถ„ํฌ
    • summaryBy(): ์›ํ•˜๋Š” ์ปฌ๋Ÿผ์˜ ๊ฐ’์„ ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ์š”์•ฝํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ
    • orderBy(): ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ
    • sample(): ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ์—์„œ ์ž„์˜๋กœ ์ƒ˜ํ”Œ์„ ์ถ”์ถœํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ
    • sampleBy(): ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ์—์„œ traaing data์™€ validation data(๋˜๋Š” test data)๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ
  • ๋ฐ์ดํ„ฐ ๋ถ„๋ฆฌ ๋ฐ ๋ณ‘ํ•ฉ

    • split(): ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉ
    • subset(): ์ „์ฒด๋ฅผ ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ๋ถ„ํ•˜๋Š” ๋Œ€์‹  ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ถ€๋ถ„๋งŒ ์›ํ• ๋•Œ ์‚ฌ์šฉ
    • merge(): ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์„ ๊ณตํ†ต๋œ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ๋ฌถ๋Š” ํ•จ์ˆ˜
  • ๋ฐ์ดํ„ฐ ์ •๋ ฌ

    • sort(): ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘ ์ •๋ ฌํ•ด์ฃผ๋Š” ํ•จ์ˆ˜
    • order(): ์ฃผ์–ด์ง„ ์ธ์ž๋ฅผ ์ •๋ ฌํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ ์š”์†Œ์˜ ์ƒ‰์ธ ๋ฐ˜ํ™˜
  • ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ์ปฌ๋Ÿผ ์ ‘๊ทผ

    • with(): ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ๋˜๋Š” ๋ฆฌ์ŠคํŠธ ๋‚ด ํ•„๋“œ๋ฅผ ํ•„๋“œ ์ด๋ฆ„๋งŒ์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ
    • within(): ๋ฐ์ดํ„ฐ ์ˆ˜์ •๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•จ(๋ฐ์ดํ„ฐ๊ฐ€ ๊ฒฐ์ธก์น˜๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ)
    • attach()์™€ detach(): ํ•จ์ˆ˜ ํ˜ธ์ถœ ํ›„ ๋ชจ๋“  ์ฝ”๋“œ์—์„œ ์ปฌ๋Ÿผ๋“ค์„ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•จ
  • ์กฐ๊ฑด์— ๋งž๋Š” ๋ฐ์ดํ„ฐ์˜ ์ƒ‰์ธ ์ฐพ๊ธฐ

    • which(): ์กฐ๊ฑด์— ๋งŒ์กฑํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ํ–‰์˜ ์ƒ‰์ธ ์ž์ฒด๋ฅผ ๋ฐ˜ํ™˜
  • ๊ทธ๋ฃน๋ณ„ ์—ฐ์‚ฐ

    • aggregate(): ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„ํ• ํ•˜๊ณ  ๊ฐ ๊ทธ๋ฃน๋งˆ๋‹ค ์š”์•ฝ์น˜๋ฅผ ๊ณ„์‚ฐ
  • ํŽธ๋ฆฌํ•œ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ์˜ ์žฌํ‘œํ˜„

    • stack(): ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„ํ• ํ•˜๊ณ  ๊ฐ ๊ทธ๋ฃน๋งˆ๋‹ค ์š”์•ฝ์น˜๋ฅผ ๊ณ„์‚ฐ
    • unstack(): stack()์„ ํ†ตํ•ด ๋ณ€ํ™˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์›๋ž˜ ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆฌ๋Š”๋ฐ ์‚ฌ์šฉ

0๊ฐœ์˜ ๋Œ“๊ธ€