невозможно заменить пробел в R - PullRequest
0 голосов
/ 27 июня 2018

Я вставляю ниже вывода моей головной команды столбца фондовых данных BSE, который я использую для практики программирования R. Я погуглил и попробовал почти каждый трюк, но я не могу очистить пробелы в конце этих значений. Кажется, что все строки имеют фиксированную ширину 12, и после символов я вижу пробел, который я не могу удалить.

не уверен, будет ли это вставлено точно таким же образом (например, я вижу много пустого пространства после слова HDFC в двойных кавычках), но никакая техника не помогла мне избавиться от этих пробельных пробелов.

head(BSE_stock_data$sc_name)
[1] "ABB LTD.    " "AEGIS LOGIS " "AMAR RAJA BA" "A.SARABHAI  " "HDFC        " "ANDHRA PETRO"

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

База R, без регулярных выражений:

BSE_stock_data$sc_name <- trimws(BSE_stock_data$sc_name)

trimws означает «обрезать пробел» .

0 голосов
/ 27 июня 2018

Вы можете исправить это с помощью sub и регулярного выражения.

BSE_stock_data$sc_name = sub("\\s+$", "", BSE_stock_data$sc_name)

[1] "ABB LTD."     "AEGIS LOGIS"  "AMAR RAJA BA" "A.SARABHAI"   "HDFC"        
[6] "ANDHRA PETRO"

Детали:

\\s    matches any whitespace character
\\s+   matches one or more whitespace characters
$      ties the match to the end of the string

Таким образом, оператор sub идентифицирует любую строку пробельных символов в конце строки и заменяет ее пустой строкой.

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