Почему `stringsAsFactors` использует заглавные буквы для удобства чтения в R? - PullRequest
5 голосов
/ 08 сентября 2011

Почему stringsAsFactors использует заглавные буквы для улучшения читабельности в R, когда большинство других команд, похоже, используют . (например, as.factor)?

Это идиосинкразия или часть более высокой организации команд, с которыми я не знаком?

Есть ли способ предсказать, какие команды будут использовать заглавные буквы, а какие будут использовать .?

Спасибо

Ответы [ 3 ]

4 голосов
/ 08 сентября 2011

Очевидно - ни один стандарт не был установлен, пока не стало слишком поздно; -)

3 голосов
/ 08 сентября 2011

Многие особенности возникают из-за наследия языка S и совместимости с реализацией в S-PLUS.В последние годы наблюдается тенденция избегать новых функций с именами, которые содержат . в качестве разделителя, чтобы избежать путаницы с методами S3.Это не было изменено ретроспективно из-за обратной совместимости и желания быть верным функциям со дней S / S-PLUS.

Поскольку _ устарела как альтернатива <-, некоторые авторыиспользовал его в именах функций;например, пакеты с Хэдли Уикхемом, но есть множество других.

Отсутствие строго соблюдаемого стандарта может сбивать с толку и, безусловно, добавляет к кривой обучения, но с этим вам придется жить.

2 голосов
/ 08 сентября 2011

Так называемый 'camelCase' - хороший выбор.

Кроме Хэдли, мало кто рекомендует подчеркивание.См., Например, Руководство по стилю Google R , в котором говорится:

Не используйте подчеркивание (_) или дефис (-) в идентификаторах.

Сам R не применяет стиль, но (эвристически говоря) не слишком много новых базовых библиотек используют точку в качестве разделителя в идентификаторах, поскольку это также используется для методов S3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...