Работа со словарями/списками в R

У меня есть тривиальный вопрос: Я не мог найти структуру данных словаря в R, таким образом, я использовал список вместо этого (как "слово"-> число) Так, прямо сейчас у меня есть проблема, как получить список ключей. Кто-либо знает?

82
задан smci 26 June 2015 в 05:47
поделиться

3 ответа

Да, тип списка - хорошее приближение. Вы можете использовать names () в своем списке, чтобы установить и получить «ключи»:

> foo <- vector(mode="list", length=3)
> names(foo) <- c("tic", "tac", "toe")
> foo[[1]] <- 12; foo[[2]] <- 22; foo[[3]] <- 33
> foo
$tic
[1] 12

$tac
[1] 22

$toe
[1] 33

> names(foo)
[1] "tic" "tac" "toe"
> 
107
ответ дан 24 November 2019 в 09:08
поделиться

Вам даже не нужны списки, если ваши «числовые» значения относятся к одному и тому же режиму. Если я возьму пример Дирка Эддельбюттеля:

> foo <- c(12, 22, 33)
> names(foo) <- c("tic", "tac", "toe")
> foo
tic tac toe
 12  22  33
> names(foo)
[1] "tic" "tac" "toe"

Списки требуются только в том случае, если ваши значения являются либо смешанными (например, символы и числа), либо векторами.

И для списков, и для векторов отдельный элемент может быть разбит на подмножество по имени:

> foo["tac"]
tac 
 22 

Или для списка:

> foo[["tac"]]
[1] 22
50
ответ дан 24 November 2019 в 09:08
поделиться

Вы можете посмотреть на хэш пакет на CRAN.

5
ответ дан 24 November 2019 в 09:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: