2009-09-23 5 views
1

(Прошу об этом от имени члена нашей группы Bay Area R. У меня не было готового ответа, поскольку я запускаю ESS в Emacs. Я предполагаю, что этот вопрос относится к запуску R внутри среда командной строки, которая поставляется в стандартном дистрибутиве Windows).Word-wrapping в среде R для Windows

Я новичок в R, но то, что я нашел в поиске моего ответа, заключается в том, что нет ничего о настройке R, чтобы я мог работать быстрее.

Одна из моих основных проблем - отсутствие переноса слов в моей версии, запущенной в Windows XP. Я заметил, что мои друзья с Mac OS имеют перенос слов.

Есть ли способ включить перенос слов в R, работающий на компьютере под управлением Windows?

ответ

3

Я думаю, что проблема происходит с длинными строками. Здесь я создаю вектор символов:

> z <- "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" 

Затем на Windows, в зависимости от размера дисплея, она будет выглядеть следующим образом:

> z 
[1] "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzz$ 

С знака $ в конце. Установка параметра ширины не влияет на вектор длинного символа. Фактически, в графическом интерфейсе Windows по умолчанию он автоматически устанавливает параметр (ширину) при изменении размера.

Я не считаю, что существуют глобальные варианты решения этой проблемы. Вы можете попробовать использовать функцию strwrap().

> strwrap(z, width=60) 
[1] "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" 
[3] "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" 
0

Ну, я пробовал то же самое, но компонент, который они используют в графическом интерфейсе Windows, очевидно, не имеет этой функции. Где была опция обертывания слов в меню Mac?

2

Шейн указывает, что это не работает в приложении Windows R, поэтому я отмечаю это как CW, если кто-то на другой платформе спотыкается по этому вопросу.


У меня нет под рукой Windows, чтобы попробовать его, но вы можете быть в состоянии использовать options(width=XXX) выполнить перенос слов.

> rnorm(20) 
[1] 1.5096142 2.5213651 1.6129801 1.2328282 0.1099109 0.7681205 
[7] 0.7408279 0.1853688 0.2679453 -1.4006292 0.5178583 -0.8838526 
[13] -1.5162541 -1.5603825 -0.7217159 2.3466593 0.7382550 1.6618710 
[19] 1.3201585 0.2872295 
> options(width=50) 
> rnorm(20) 
[1] -0.990605829 -1.479986280 -0.670011156 
[4] 1.545288381 1.749429922 -0.386976121 
[7] 0.152663018 0.537898605 0.307018436 
[10] -1.214402678 -0.066987719 -0.003181806 
[13] 0.775656734 -1.084597991 1.419298825 
[16] 1.634812239 -0.234720361 -1.232159240 
[19] -0.560096460 0.167267767 

А вот R помощь по опциям, для справки:

«Ширина»: определяет максимальное количество столбцов на линии, используемой в печатных векторов, матриц и массивов, а также при заполнение 'кошка'.

Столбцы обычно такие же, как и символы, кроме CJK .

Вы можете изменить это, если вы измените размер окна, что г работает в. Допустимые значения 10 ... 10000 с по умолчанию обычно 80. (Пределы допустимых значений в файле «Печать .h 'и может быть изменен путем повторной компиляции R.) Некоторые консоли R автоматически изменяют значение, когда они изменены.

+0

Консоль Windows автоматически изменяет ее при изменении размера. – Shane