2016-05-05 8 views
3
sample1 = read.csv("pirate.csv") 
sample1[,7] 
[1] >>xyz>>hello>>mate 1 
[2] >>xyz>>hello>>mate 2 
[3] >>xyz>>mate 3 
[4] >>xyz>>mate 4 
[5] >>xyz>>hello>>mate 5 
[6] >>xyz>>hello>>mate 6 

Мне нужно извлечь и создать массив, содержащий все слова после последнего >>.Извлечь текст после символа в R

Как это сделать?

Кроме того, как можно извлечь (а) о Qwerty, (б) Mate1 и (с) pirate1 в различных переменных из следующей строки

p= '>>xyz- o qwerty>>hello>>mate1>>sole pirate1' 

Благодаря

+0

почему есть 'r' тег. вам нужно это в 'r', а также преуспеть? – Sotos

+0

Да, мне нужно извлечь столбец из файла excel в r в векторной форме. – Looper

+1

См. 'Read.csv' заголовок аргументов и nrows. Это должно начать с чтения. Об этом много вопросов. – lmo

ответ

5
x <- c('>>xyz>>hello>>mate 1', '>>xyz>>hello>>mate 2', '>>xyz>>mate 3', ' >>xyz>>mate 4' ,'>>xyz>>hello>>mate 5') 
sub('.*>>', '', x) 
#[1] "mate 1" "mate 2" "mate 3" "mate 4" "mate 5" 
+0

, вы указываете каждое имя строки столбца 7 в векторе x. 1) Как передать весь столбец в вектор (так как это только 6 строк, но я имею дело с более чем 100 строк) 2) Я также хочу извлечь текст между двумя конкретными символами, например. >> xyz-qwerty >> hello >> mate1 >> pirate1 in above Я хочу извлечь qwerty и hello в две отдельные переменные. Пожалуйста, помогите мне с этим. Благодарим – Looper

+0

, а затем выберите отдельный столбец, затем замените 'x'' sample1 $ ... 'или' sample1 [, 7] '. Для извлечения других терминов вам нужно будет обновить свой вопрос и дать более подробную информацию об этом. – Sotos

+0

Вопрос обновлен ... ответьте сейчас. – Looper

1

Предполагая, что вы уже читали этот материал в кадр R данных, вы можете использовать stringr пакет следующим образом:

library(stringr) 
str_extract(df$mystring, '\\S+$') 

Например, если у вас есть строка, как это:

s <- '>>hello1>>hola1>>ahoy mate1' 

Вы получаете:

str_extract(s, '\\S+$') 
[1] "mate1" 
+0

или просто 'sub ('. *', ' ', s) ', но я думаю, что его проблема связана также с импортом данных в R ... – Sotos

+1

Да. Согласен. Я провожу людей в пакеты, которые являются универсальными, поэтому они могут делать больше с ними по мере необходимости для различных проблем. – Gopala

+0

'все слова после последнего >>' в вашем примере должны быть 'ahoy mate1' – rawr