В целом приведение от числового к символьному типу и назад не будет точно обратимо из-за ошибок округления в символьном представлении.
Читатель должен консультироваться с различными справочными файлами для ознакомления.
3.2. Изменяющаяся длина объекта
«Пустой» объект может все еще иметь тип. Например:
делает e пустой векторной структурой типа числовой (numeriс). Так же character () является пустым символьным вектором, и так далее. Как только объект любого размера был создан, новые компоненты могут быть просто добавлены к нему, давая ему значение индексов вне его предыдущего диапазона. Таким образом:
теперь делает e вектором длины 3, (первые две компоненты, которого равны NA). Это применяется к любой структуре вообще, если тип дополнительного компонента (ов) согласован с типом первого объекта.
Эта автоматическая настройка длин объекта часто используется для ввода, например, в функции scan () (см. Раздел 7.2 [Функция scan ()]).
Наоборот требуется усечение размера объекта для выполнения присвоения. Следовательно, если alpha – объект длины 10, то
> alpha <– alpha [2 * 1:5]
делает его объектом длины 5, состоящим только из прежних компонентов с четным индексом. (Старые индексы не сохранены, конечно). Затем можно сохранить только первые три значения:
и вектор может быть расширен (путем пропущенных значений) аналогичным образом.
3.3. Получение и установка атрибутов
Функция attributes (object) возвращает список всех не внутренних атрибутов, в настоящий момент определенных для этого объекта. Можно использовать функцию attr (object, name) для выбора определенного атрибута. Эта функция редко используются, за исключением довольно особых обстоятельств, когда некоторый новый атрибут создается для некоторой конкретной цели, например, для присоединения даты создания или оператора с объектом R. Понять, однако, очень важно.
Некоторое внимание должно быть уделено, когда присваиваются или удаляются атрибуты как неотъемлемая часть системы объекта, используемой в R.
Когда такое используется на левой стороне присвоения, то оно может использоваться или для присоединения нового атрибута с object или изменения существующего. Например:
> attr (z, «dim») <– c (10,10)
позволяет R обрабатывать z как будто он является матрицей