Удаление "" (пустые значения) из символа строк - PullRequest
0 голосов
/ 10 декабря 2018

Я искал несколько часов и не смог удалить "" из строки символов ниже.

c ("Final", "A", "7.43", "8.50"," 15,93 "," 2,00 "," 1,00 "," 0,30 "," 0,37 "," 7,43 "," 8,50 "," 0,50 "," 0,67 "," "," "," "," ","", "", "", "B", "7.00", "3.77", "10.77", "7.00", "1.67", "3.77", "", "", "", "", ""," "," "," ",

У меня есть еще много этих пустых значений в этом наборе данных, и я просто хочу избавиться от них, прежде чем организовывать их как фрейм данных, например

Final AB 7,43 7,43 8,50 8,50 15,93 0,50 2,00 0,67 1,00 0,30

Спасибо,

1 Ответ

0 голосов
/ 10 декабря 2018

Вы можете использовать базу grep с values = TRUE.Он ищет вектор символов для заданного шаблона регулярных выражений и возвращает все значения, где этот шаблон найден.

Вы можете подумать о логике своего шаблона несколькими способами.Можно подумать об этом как о сохранении значений с символом «слово», которые представляют собой буквы, цифры или подчеркивания.

x <- c("Final", "A", "7.43", "8.50", "15.93", "2.00", "1.00", "0.30", "0.37", " 7.43", " 8.50", "0.50", "0.67", " ", " ", " ", " ", " ", " ", " ", "B", "7.00", "3.77", "10.77", " 7.00", "1.67", "3.77", " ", " ", " ", " ", " ", " ", " ", " ")

grep("\\w", x, value = T)
#>  [1] "Final" "A"     "7.43"  "8.50"  "15.93" "2.00"  "1.00"  "0.30" 
#>  [9] "0.37"  " 7.43" " 8.50" "0.50"  "0.67"  "B"     "7.00"  "3.77" 
#> [17] "10.77" " 7.00" "1.67"  "3.77"

Другой способ - найти значения с символом, который isn 't a пробел (\\S - отрицание \\s):

grep("\\S", x, value = T)
#>  [1] "Final" "A"     "7.43"  "8.50"  "15.93" "2.00"  "1.00"  "0.30" 
#>  [9] "0.37"  " 7.43" " 8.50" "0.50"  "0.67"  "B"     "7.00"  "3.77" 
#> [17] "10.77" " 7.00" "1.67"  "3.77"

Создан в 2018-12-10 пакетом Представить (v0.2.1)

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