Язык R меня смущает. Сущности имеют режимы и классы , но даже этого недостаточно для полного описания объекта.
Этот ответ говорит
В R каждый «объект» имеет режим и класс.
Итак, я провел следующие эксперименты:
> class(3)
[1] "numeric"
> mode(3)
[1] "numeric"
> typeof(3)
[1] "double"
Пока достаточно хорошо, но вместо этого я передал вектор:
> mode(c(1,2))
[1] "numeric"
> class(c(1,2))
[1] "numeric"
> typeof(c(1,2))
[1] "double"
Это не имеет смысла. Конечно, вектор целых чисел должен иметь другой класс или другой режим, чем одно целое число? Мои вопросы:
Обновление : По-видимому, литерал 3 - это просто вектор длины 1. Скаляров нет. Хорошо, но ... Я попробовал режим ("строка")
и получил "символ"
, что привело меня к мысли, что строка представляет собой вектор символов. Но если это было правдой, то это должно быть правдой, но это не так! c ('h', 'i') == "привет"