У меня есть база данных со столбцом, который содержит название вида в строке символов:
plant.first.id$sp.lst[42]
Возвращает:
[1] ['Trema lamarckianum', 'Parasponia rigida', 'Trema tomentosum', 'Trema micranthum', 'Cannabis sativa']
Я хотел бы взять весь столбец plant.first.id$sp.lst
и превратить значения в вектор, которым я смогу манипулировать.
Например, я хочу это:
> plant.first.id$sp.lst[3:5]
[1] []
[2] ['Ficus carica', 'Aphananthe philippinensis', 'Ficus insipida', 'Aphananthe monoica', 'Castilla elastica', 'Maclura cochinchinensis', 'Maclura fruticosa']
[3] ['Artocarpus tamaran']
dput(plant.first.id$sp.lst[3:5])
structure(c(14L, 7L, 1L), .Label = c("['Artocarpus tamaran']",
"['Artocarpus thailandicus']", "['Boronia algida', 'Zanthoxylum coreanum', 'Citrus reticulata']",
"['Cissus integrifolia', 'Cissus populnea', 'Cissus hastata', 'Cissus trianae', 'Cissus penninervis', 'Cissus assamica']",
"['Cryptandra amara', 'Broussonetia papyrifera', 'Serichonus gracilipes', 'Colubrina asiatica', 'Artocarpus tamaran', 'Artocarpus chama', 'Artocarpus thailandicus', 'Artocarpus rubrovenius', 'Gouania mauritiana']",
"['Enterolobium gummiferum']", "['Ficus carica', 'Aphananthe philippinensis', 'Ficus insipida', 'Aphananthe monoica', 'Castilla elastica', 'Maclura cochinchinensis', 'Maclura fruticosa']",
"['Maclura cochinchinensis']", "['Pouteria multiflora', 'Diospyros toposia', 'Van-royena castanosperma', 'Micropholis guyanensis', 'Pycnandra comptonii', 'Chrysophyllum venezuelanense']",
"['Pouteria multiflora', 'Van-royena castanosperma', 'Chrysophyllum venezuelanense', 'Pycnandra comptonii', 'Micropholis guyanensis']",
"['Trema lamarckianum', 'Cannabis sativa', 'Trema tomentosum', 'Parasponia rigida', 'Ficus annulata', 'Trema micranthum', 'Celtis iguanaea', 'Artocarpus thailandicus']",
"['Trema lamarckianum', 'Ficus annulata', 'Parasponia rigida', 'Trema tomentosum', 'Trema micranthum', 'Cannabis sativa']",
"['Trema lamarckianum', 'Parasponia rigida', 'Trema tomentosum', 'Trema micranthum', 'Cannabis sativa']",
"[]"), class = "factor")
Что-то вроде:
c("")
c('Ficus carica', 'Aphananthe philippinensis', 'Ficus insipida', 'Aphananthe monoica', 'Castilla elastica', 'Maclura cochinchinensis', 'Maclura fruticosa')
c('Artocarpus tamaran')
в форме списка.
Я пробовал это:
strsplit(as.vector(plant.first.id$sp.lst[42]),split = ",")
Но его нельзя использовать:
[[1]]
[1] "['Trema lamarckianum'" " 'Parasponia rigida'" " 'Trema tomentosum'" " 'Trema micranthum'" " 'Cannabis sativa']"
Также это:
gsub("[[(]", "(", plant.first.id$sp.lst[[42]])
gsub("]", ")", plant.first.id$sp.lst[[42]])
Но все же нет очень полезно ...
[1] "('Trema lamarckianum', 'Parasponia rigida', 'Trema tomentosum', 'Trema micranthum', 'Cannabis sativa']"
[1] "['Trema lamarckianum', 'Parasponia rigida', 'Trema tomentosum', 'Trema micranthum', 'Cannabis sativa')"