Listy nazwane
Część sekcji Podstawy ścieżki R w Coddy. Lekcja 74 z 78.
Podobnie jak nazwane wektory, listy mogą mieć nazwy przypisane do swoich elementów. Dzięki temu Twój kod jest bardziej czytelny i możesz uzyskiwać dostęp do elementów za pomocą znaczących etykiet zamiast pozycji liczbowych.
Możesz przypisywać nazwy podczas tworzenia listy:
person <- list(name = "Alice", age = 25, active = TRUE)
print(person)Wynik:
$name
[1] "Alice"
$age
[1] 25
$active
[1] TRUEZwróć uwagę, że wynik pokazuje teraz $name zamiast [[1]]. Aby uzyskać dostęp do nazwanych elementów, użyj operatora $:
person <- list(name = "Alice", age = 25, active = TRUE)
print(person$age)Wynik:
[1] 25Możesz też użyć podwójnych nawiasów z nazwą jako ciągiem znaków, co jest przydatne, gdy nazwa jest przechowywana w zmiennej:
person <- list(name = "Alice", age = 25)
print(person[["name"]])Wynik:
[1] "Alice"Modyfikowanie nazwanych elementów działa tak samo. Użyj $, aby zmienić istniejące wartości lub dodać nowe:
person <- list(name = "Alice", age = 25)
person$age <- 26
person$city <- "Paris"
print(person)Wynik:
$name
[1] "Alice"
$age
[1] 26
$city
[1] "Paris"Wyzwanie
ŁatwyOtrzymasz trzy wiersze danych wejściowych:
- Tytuł książki (np.
The Great Gatsby) - Autor książki (np.
F. Scott Fitzgerald) - Rok publikacji (np.
1925)
Wykonaj następujące operacje:
- Utwórz nazwaną listę o nazwie
bookz trzema elementami:title,authoriyear(przekonwertuj year na liczbę) - Wyświetl tytuł książki za pomocą operatora
$ - Wyświetl rok wydania książki, używając podwójnych nawiasów z nazwą jako ciągiem znaków
- Zaktualizuj
year, aby wskazywał rok późniejszy, używając operatora$ - Dodaj nowy element o nazwie
availablez wartościąTRUE - Wyświetl całą zaktualizowaną listę
Na przykład, jeśli dane wejściowe to:
1984
George Orwell
1949Wynik powinien być następujący:
[1] "1984"
[1] 1949
$title
[1] "1984"
$author
[1] "George Orwell"
$year
[1] 1950
$available
[1] TRUEWyjaśnienie:
book$titlewyświetla wartość tytułubook[["year"]]wyświetla pierwotny rok- Rok zostaje zaktualizowany z 1949 na 1950
- Dodawany jest nowy element
availableo wartościTRUE
Spróbuj swoich sił
# Odczytaj dane wejściowe
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: Napisz swój kod poniżej
# 1. Utwórz listę z nazwanymi elementami o nazwie 'book', zawierającą elementy: title, author i year (przekonwertuj year na wartość liczbową)
# 2. Wypisz tytuł książki, używając operatora $
# 3. Wypisz rok wydania książki, używając podwójnych nawiasów kwadratowych i nazwy elementu jako ciągu znaków
# 4. Zaktualizuj year, zwiększając jego wartość o 1, używając operatora $
# 5. Dodaj nowy element o nazwie 'available' z wartością TRUE
# 6. Wypisz całą zaktualizowaną listęTa lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 2
Operatory logiczne (AND, OR)Operatory logiczne, część 2 (NOT)Powtórka — prosta logikaLogika wektoryzowana, część 1Logika wektoryzowana, część 27Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych od użytkownika10FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz2Zmienne i typy danych
Liczbowy typ danychCałkowity typ danychZnakowy typ danychLogiczny typ danychSprawdzanie typów danychKonwencje nazewnictwaBrakujące wartości: NAPodsumowanie – tworzenie zmiennych8Pętle
Pętla forPętla whilePrzerwijNastępna iteracja (continue)Powtórka — silniaGenerowanie sekwencji (seq, :)Pętle zagnieżdżonePowtórka — dynamiczne wprowadzanie danych11Wektory
Tworzenie wektorów za pomocą c()Dostęp do elementów wektoraModyfikowanie wektorówOperacje na wektorachPowtórka – wektor cenowyPowtórka – odwrócony wektorWektory nazwane14Listy w R
Tworzenie listDostęp do elementów listyModyfikowanie listListy nazwanePowtórka — lista produktów3Operatory, część 1
Operatory arytmetyczneDzielenie całkowite i moduloOperatory przypisaniaPowtórka — prosta matematykaOperatory porównania6Podstawowe wejście/wyjście
Wyświetlanie danychCat jako wyjścieWyjście z użyciem zmiennychOdczyt danych wejściowych za pomocą readline()Podstawy konwersji typówPowtórka — kalkulator wiekuPowtórka — prawda czy fałsz9Funkcje
Deklarowanie funkcjiArgumenty funkcjiWartości zwracanePowtórzenie — funkcja SigmaPowtórzenie — funkcja walidującaDomyślne wartości parametrówPoćwicz samodzielnie: Kompilator R online