Menu
Coddy logo textTech

이름이 지정된 리스트

Coddy R 여정의 기초 섹션에 포함된 레슨 — 78개 중 74번째.

이름이 지정된 벡터와 마찬가지로, 리스트의 요소에도 이름을 할당할 수 있습니다. 이렇게 하면 코드를 더 읽기 쉽게 만들 수 있으며, 숫자 위치 대신 의미 있는 레이블을 통해 요소에 접근할 수 있습니다.

리스트를 생성할 때 이름을 할당할 수 있습니다:

person <- list(name = "Alice", age = 25, active = TRUE)
print(person)

출력:

$name
[1] "Alice"

$age
[1] 25

$active
[1] TRUE

출력 결과가 이제 [[1]] 대신 $name으로 표시되는 것을 확인하세요. 이름이 지정된 요소에 액세스하려면 $ 연산자를 사용하세요:

person <- list(name = "Alice", age = 25, active = TRUE)
print(person$age)

출력:

[1] 25

이름을 문자열로 사용하는 이중 대괄호를 사용할 수도 있는데, 이는 이름이 변수에 저장되어 있을 때 유용합니다:

person <- list(name = "Alice", age = 25)
print(person[["name"]])

출력:

[1] "Alice"

이름이 지정된 요소를 수정하는 방식도 동일합니다. $를 사용하여 기존 값을 변경하거나 새로운 값을 추가하세요:

person <- list(name = "Alice", age = 25)
person$age <- 26
person$city <- "Paris"
print(person)

출력:

$name
[1] "Alice"

$age
[1] 26

$city
[1] "Paris"
challenge icon

챌린지

쉬움

세 줄의 입력을 받게 됩니다:

  1. 책 제목 (예: The Great Gatsby)
  2. 책 저자 (예: F. Scott Fitzgerald)
  3. 출판 연도 (예: 1925)

다음 작업을 수행하세요:

  1. title, author, year 세 가지 요소를 가진 book이라는 이름의 리스트를 생성합니다 (연도는 숫자로 변환하세요).
  2. $ 연산자를 사용하여 책의 제목을 출력합니다.
  3. 이름을 문자열로 사용하는 이중 대괄호를 사용하여 책의 연도를 출력합니다.
  4. $ 연산자를 사용하여 year를 1년 뒤로 업데이트합니다.
  5. 값이 TRUEavailable이라는 새 요소를 추가합니다.
  6. 업데이트된 전체 리스트를 출력합니다.

예를 들어, 입력값이 다음과 같다면:

1984
George Orwell
1949

출력은 다음과 같아야 합니다:

[1] "1984"
[1] 1949
$title
[1] "1984"

$author
[1] "George Orwell"

$year
[1] 1950

$available
[1] TRUE

설명:

  • book$title은 제목 값을 출력합니다.
  • book[["year"]]은 원래의 연도를 출력합니다.
  • 연도가 1949에서 1950으로 업데이트되었습니다.
  • 값이 TRUE인 새로운 available 요소가 추가되었습니다.

치트 시트

리스트의 요소에 이름을 할당하여 가독성을 높이고 의미 있는 레이블로 접근할 수 있습니다.

생성 시 이름을 할당하여 이름이 지정된 리스트를 만듭니다:

person <- list(name = "Alice", age = 25, active = TRUE)

$ 연산자를 사용하여 이름이 지정된 요소에 접근합니다:

person$age  # 25를 반환합니다

이름을 문자열로 사용하여 대괄호 두 개로 이름이 지정된 요소에 접근합니다:

person[["name"]]  # "Alice"를 반환합니다

기존의 이름이 지정된 요소를 수정합니다:

person$age <- 26

새로운 이름이 지정된 요소를 추가합니다:

person$city <- "Paris"

직접 해보기

# 입력 읽기
con <- file("stdin", "r")
title <- suppressWarnings(readLines(con, n = 1))
author <- suppressWarnings(readLines(con, n = 1))
year <- suppressWarnings(readLines(con, n = 1))
close(con)

# TODO: 아래에 코드를 작성하세요
# 1. title, author, year(숫자형으로 변환) 요소를 포함하는 'book'이라는 이름의 리스트를 생성하세요
# 2. $ 연산자를 사용하여 책의 제목(title)을 출력하세요
# 3. 이름을 문자열로 사용하는 이중 대괄호를 사용하여 책의 연도(year)를 출력하세요
# 4. $ 연산자를 사용하여 연도를 1년 뒤로 업데이트하세요
# 5. 값이 TRUE인 'available'이라는 새 요소를 추가하세요
# 6. 업데이트된 전체 리스트를 출력하세요
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨