[R] How to apply a function to every element of a dataframe, when the function uses for each colummn and row different values to calculate with?

Jacqueline Oehri jacqueline.oehri at gmail.com
Sat Aug 24 19:20:43 CEST 2013


Dear David

Thank you for your answer!! Yes, youre right, I really posted my
question not in a good way!! Sorry for inconveniences I maybe caused
so far!! I will try to repost my question in a fine way, and in a
shorter way!! Thanks anyway for all your Inputs!!

have a nice day!

Jacqueline

2013/8/23 David Winsemius <dwinsemius at comcast.net>:
>
> On Aug 23, 2013, at 10:40 AM, Jacqueline Oehri wrote:
>
>> Dear David and dear peter
>>
>> Sorry that I crossposted my question before!!!
>> Thank you veery much for your answer!!! It turned out to work fine;
>> except that if you have "fmat" (see below) with a lot of "NaN" in it,
>> the command:
>>
>> colnames(m) [ apply(m, 1, which.max) ]
>>
>> doesnt give the colnames!
>
> It does with the m object immediately below.
>
> You are asked to provide a minimal example. Failing a minimal example then at least post code that can be cut-and-pasted. You have post a very long octothorpe(#)-free code/text mixture below, and I for one do not feel honor bound to make it urn.
>
> --
> David.
>>
>> m <- data.matrix(m); n <- sum(m); sr <- rowSums(m)
>> sc <- colSums(m)
>> m
>> E <- outer(sr, sc, "*")/n
>> fmat <- (abs(m - E) )^2/E
>> colnames(fmat) [ apply(fmat, 1, which.max) ]
>>
>>> dput(m)
>> structure(list(PL_7_1_7.txt = c(0, 0, 1, 1, 0, 0, 1, 0, 0, 0,
>> 0, 0, 0), PL_7_1_8.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
>> 0), PUEH_4_0.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0),
>>    PUEH_7_1_2.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0),
>>    UEH_7_2_2.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0)), .Names
>> = c("PL_7_1_7.txt",
>> "PL_7_1_8.txt", "PUEH_4_0.txt", "PUEH_7_1_2.txt", "UEH_7_2_2.txt"
>> ), row.names = c("821194", "821202", "821206", "827162", "827166",
>> "827178", "827182", "827186", "827190", "827194", "827198", "827206",
>> "833166"), class = "data.frame")
>>
>>
>>
>> ---> But I realized by now, that for my analysis, my "reinvented
>> chi-square-test" is not so good; so I will use another technique,
>> maybe you can tell me, if this is a better or a worse way?:
>>
>> A) I originally have two lists; 1. "Sp" & 2. "LCT" ;
>> "Sp" is constituted of coordinate-Names, that each contain a list of
>> plant names. (see below)
>> "LCT" is constituted of landcovertype-names, that each also contain a
>> list of other plant names. (see below)
>>
>> I now want to know for each coordinate, to which landcovertype it
>> belongs most probably.
>> I do this, by counting for the plantlist of each coordinate-Name in
>> "Sp"; how many plants do as well occur in the plantlist of each
>> landcovertype in "LCT".
>> More precise; from these two lists (Sp & LCT), I made a table
>> (rownames = coordinate-Names from Sp & colnames = landcovertype-names
>> from LCT),  where for each row, you can see the "jaccard-index" (see
>> below) for each column.
>>
>> --> my Question: how can you not only extract the Colnames of the
>> maximum value per row, but also the maximum value itself? so that in
>> the end i can add the colname of the maximum value AND the maximum
>> value itself to the table:
>>
>> dfj is my dataframe (see below)
>>
>> cn <- colnames(dfj) [ apply(dfj, 1, which.max) ]
>>
>> newtable <- cbind(dfj, Delarze= cn, Jaccardvalue= ??? )
>>
>>
>> (The Jaccard index:
>> jaccard index "J" ( similarity Index in ecology):
>>
>> a <- length(intersect(LCT, Sp)
>> b <- length(Sp)+length(LCT) - length(intersect(LCT, Sp)
>>
>> J <- a/b)
>>
>> --> I did the table dfj like this:
>>
>>                         data.j <- list()
>>                          for(i in seq(along=Sp))
>>                            data.j <- c(data.j,
>>                                        list(sapply(LCT,
>>                                                    function(x) {
>>
>> (length(intersect(x, Sp[[i]]))) /
>>
>> (length(Sp[[i]])+length(x) -
>>
>> length(intersect(x, Sp[[i]])))
>>                                                    })[1:74]))
>> dfj <- do.call(rbind, data.j)
>> dfj <- data.frame(dfj)
>>
>>                          #rownames für dfj:
>>                          rownames(dfj) <-names(Sp)
>>
>>                          #colname of the max value per coordinate-Name:
>>                          cn <- colnames(dfj) [ apply(dfj, 1, which.max) ]
>>
>>                          #???how to find the max.value itself?
>>                           vj <- apply(dfj, 1, which.max)
>>
>>
>> completedfj <- cbind(dfj, Delarze= cn, Jaccardvalue=vj)
>>
>>
>> B) And how can I make visible, if there are two or more equal values in one row?
>>
>>
>> Thaank you so much for your answer!!!
>>
>> Have a nice day & best wishes
>>
>> Jacqueline
>>
>>> dput(Sp)
>> structure(list(`491114` = c("Amaranthus cruentus ", "Chenopodium album",
>> "Chenopodium polyspermum", "Fallopia convolvulus", "Lolium perenne",
>> "Polygonum aviculare ", "Polygonum persicaria", "Viola tricolor ",
>> "Aethusa cynapium", "Anagallis arvensis", "Aphanes arvensis",
>> "Conyza canadensis ", "Equisetum arvense", "", "", "", "", "",
>> "", "", "", "", "", "", ""), `491118` = c("Arrhenatherum elatius",
>> "Calystegia sepium", "Capsella bursa-pastoris", "Centaurium erythraea",
>> "Chaenorrhinum minus", "Chenopodium album", "Chenopodium polyspermum",
>> "Crepis setosa", "Dactylis glomerata", "Daucus carota", "Euphorbia exigua",
>> "Festuca pratensis ", "Geranium dissectum", "Kickxia elatine",
>> "Kickxia spuria", "Lathyrus tuberosus", "Lolium multiflorum",
>> "Lolium perenne", "Lotus corniculatus ", "Matricaria recutita",
>> "Medicago lupulina", "Phleum pratense ", "Picris hieracioides ",
>> "Plantago lanceolata", "Plantago major ", "Poa pratensis ", "Polygonum
>> aviculare ",
>> "Potentilla reptans", "Prunella vulgaris", "Sonchus asper", "Taraxacum
>> officinale ",
>> "Trifolium pratense ", "Trifolium repens", "Verbena officinalis",
>> "Agropyron repens", "Bromus hordeaceus", "Cerastium fontanum ",
>> "Festuca rubra ", "Poa trivialis ", "Trisetum flavescens", "Veronica arvensis",
>> "Veronica serpyllifolia ", "", "", "", "", "", "", "", "", ""
>> ), `497114` = c("Agropyron repens", "Anagallis arvensis", "Carpinus betulus",
>> "Lolium perenne", "Medicago lupulina", "Plantago major ", "Polygonum
>> aviculare ",
>> "Taraxacum officinale ", "Trifolium repens", "Veronica hederifolia",
>> "Veronica persica", "Plantago lanceolata", "Ligustrum vulgare",
>> "Lapsana communis", "Poa trivialis ", "", "", "", "", "", "",
>> "", "", ""), `497118` = c("Plantago major ", "Cardamine hirsuta",
>> "Conyza canadensis ", "Poa trivialis ", "Sagina procumbens",
>> "", "", ""), `497142` = c("Alchemilla alpina ", "Anemone narcissiflora",
>> "Anthyllis vulneraria ", "Arabis ciliata", "Cardamine heptaphylla",
>> "Carduus defloratus ", "Carex caryophyllea", "Carex ornithopoda",
>> "Carex sempervirens", "Centaurea montana", "Cotoneaster integerrima",
>> "Euphrasia salisburgensis", "Festuca ovina ", "Galium anisophyllon",
>> "Gentiana campestris", "Gentiana lutea", "Gentiana verna", "Globularia
>> cordifolia",
>> "Helianthemum nummularium ", "Hieracium murorum ", "Hieracium pilosella ",
>> "Hippocrepis comosa", "Juniperus communis ", "Laserpitium latifolium",
>> "Leucanthemum vulgare ", "Linum catharticum", "Lotus corniculatus ",
>> "Mercurialis perennis", "Phyteuma orbiculare", "Plantago atrata",
>> "Plantago media", "Poa alpina", "Polygala alpestris", "Polygonatum
>> verticillatum",
>> "Polygonum viviparum", "Potentilla crantzii", "Pulsatilla alpina ",
>> "Ranunculus montanus ", "Scabiosa lucida", "Senecio doronicum",
>> "Seseli libanotis", "Sesleria caerulea", "Silene nutans ", "Thesium alpinum",
>> "Thymus serpyllum ", "Trifolium montanum", "Trifolium pratense ",
>> "Valeriana montana", "Alchemilla vulgaris ", "Campanula thyrsoides",
>> "Carlina acaulis", "Erigeron alpinus", "Euphorbia verrucosa",
>> "Gymnadenia conopsea", "Nigritella nigra ", "Rhinanthus minor",
>> "Sedum album", "Traunsteinera globosa", "", "", "", "", "", "",
>> "", "", "", "", "", ""), `497146` = c("Ajuga reptans", "Cardamine heptaphylla",
>> "Dryopteris filix-mas", "Fagus sylvatica", "Fragaria vesca",
>> "Geranium robertianum ", "Hieracium murorum ", "Hordelymus europaeus",
>> "Knautia dipsacifolia", "Lamium galeobdolon ", "Oxalis acetosella",
>> "Polygonatum verticillatum", "Prenanthes purpurea", "Rubus idaeus",
>> "Vaccinium myrtillus", "Viola reichenbachiana ", "Acer pseudoplatanus",
>> "Heracleum sphondylium ", "Galium odoratum", "Adenostyles alliariae",
>> "", "", ""), `503114` = c("Achillea millefolium ", "Alliaria petiolata",
>> "Arabidopsis thaliana", "Arrhenatherum elatius", "Bromus hordeaceus",
>> "Bromus sterilis", "Buxus sempervirens", "Cardamine hirsuta",
>> "Carpinus betulus", "Convolvulus arvensis", "Daucus carota",
>> "Erodium cicutarium", "Euphorbia helioscopia", "Fallopia convolvulus",
>> "Festuca pratensis ", "Geranium columbinum", "Geranium pyrenaicum",
>> "Hordeum murinum ", "Lamium purpureum", "Lapsana communis", "Medicago lupulina",
>> "Picris hieracioides ", "Plantago lanceolata", "Poa annua", "Poa pratensis ",
>> "Polygonum aviculare ", "Potentilla reptans", "Ranunculus ficaria",
>> "Senecio vulgaris", "Taraxacum officinale ", "Veronica persica",
>> "Vicia sepium", "Acer pseudoplatanus", "Agropyron repens", "Alopecurus
>> myosuroides",
>> "Cerastium glomeratum", "Clematis vitalba", "Erophila verna ",
>> "Fraxinus excelsior", "Hedera helix", "Plantago major ", "Poa bulbosa",
>> "Poa trivialis ", "Valerianella carinata", "Veronica arvensis",
>> "Veronica hederifolia", "", "", "", "", "", "", "", "", "", "",
>> "", "", "", "", "", "", "", "", "", "", ""), `503118` = c("Ranunculus ficaria",
>> "Ranunculus acris ", "Stellaria media ", "Rumex acetosa", "Viola hirta",
>> "Cardamine hirsuta", "Cardamine pratensis ", "Primula acaulis",
>> "Lysimachia nummularia", "Geum urbanum", "Potentilla sterilis",
>> "Trifolium repens", "Euphorbia peplus", "Hedera helix", "Ajuga reptans",
>> "Prunella vulgaris", "Plantago lanceolata", "Plantago media",
>> "Plantago major ", "Veronica chamaedrys", "Veronica arvensis",
>> "Veronica persica", "Veronica filiformis", "Bellis perennis",
>> "Galinsoga ciliata", "Leucanthemum vulgare ", "Hypochaeris radicata",
>> "Leontodon hispidus ", "Taraxacum officinale ", "Hieracium pilosella ",
>> "Festuca arundinacea ", "Festuca rubra ", "Poa trivialis ", "Poa pratensis ",
>> "Lolium perenne", "Trisetum flavescens", "Agrostis stolonifera",
>> "Anthoxanthum odoratum ", "", "", "", ""), `503130` = c("Oxalis corniculata",
>> "", "", ""), `503134` = c("Agrostis stolonifera", "Bromus hordeaceus",
>> "Carpinus betulus", "Dactylis glomerata", "Digitaria ischaemum",
>> "Equisetum arvense", "Fallopia convolvulus", "Festuca arundinacea ",
>> "Fraxinus excelsior", "Heracleum sphondylium ", "Holcus lanatus",
>> "Lolium perenne", "Oxalis fontana", "Phleum pratense ", "Plantago major ",
>> "Poa annua", "Poa pratensis ", "Poa trivialis ", "Polygonum persicaria",
>> "Ranunculus acris ", "Taraxacum officinale ", "Trifolium pratense ",
>> "Trifolium repens", "Veronica serpyllifolia ", "Viola tricolor ",
>> "Agropyron repens", "Bromus sterilis", "Capsella bursa-pastoris",
>> "Cerastium fontanum ", "Epilobium tetragonum ", "Geranium robertianum ",
>> "Polygonum aviculare ", "Trifolium dubium", "Veronica arvensis",
>> "Vicia sativa ", "", "", "", "", "", "", "", "", "", ""), `503138` =
>> c("Capsella bursa-pastoris",
>> "Polygonum aviculare ", "Stellaria media ", "Trifolium pratense ",
>> "Veronica hederifolia", "Viola tricolor ", "Aphanes arvensis",
>> "Convolvulus arvensis", "Veronica persica", "Orobanche minor",
>> "Tripleurospermum perforatum", "", "", "", "", "", ""), `503142` =
>> c("Acer campestre",
>> "Acer opalus", "Anemone nemorosa", "Berberis vulgaris", "Carex alba",
>> "Carex digitata", "Carex flacca", "Carex ornithopoda", "Crataegus monogyna ",
>> "Daphne laureola", "Euphorbia amygdaloides", "Fagus sylvatica",
>> "Festuca rubra ", "Fragaria vesca", "Fraxinus excelsior", "Hedera helix",
>> "Helleborus foetidus", "Hieracium murorum ", "Ilex aquifolium",
>> "Ligustrum vulgare", "Lonicera xylosteum", "Lotus corniculatus ",
>> "Mercurialis perennis", "Pinus sylvestris", "Primula veris ",
>> "Prunus spinosa", "Quercus petraea", "Ranunculus nemorosus ",
>> "Rosa arvensis", "Rosa canina ", "Sanguisorba minor ", "Sesleria caerulea",
>> "Sorbus aria", "Taraxacum officinale ", "Teucrium chamaedrys",
>> "Tilia platyphyllos", "Viburnum lantana", "Viola reichenbachiana ",
>> "Ajuga reptans", "Bromus erectus ", "Campanula rotundifolia",
>> "Carex caryophyllea", "Carex montana", "Crataegus laevigata",
>> "Dactylis glomerata", "Euphorbia dulcis", "Pimpinella saxifraga ",
>> "Primula acaulis", "Ranunculus bulbosus", "Rubus fruticosus ",
>> "Vinca minor", "", "", "", "", "", "", "", "", "", ""), `503146` =
>> c("Acer pseudoplatanus",
>> "Achillea millefolium ", "Alchemilla vulgaris ", "Bellis perennis",
>> "Bromus erectus ", "Capsella bursa-pastoris", "Carum carvi",
>> "Cerastium fontanum ", "Chenopodium bonus-henricus", "Cynosurus cristatus",
>> "Dactylis glomerata", "Geranium pyrenaicum", "Leontodon autumnalis",
>> "Lolium perenne", "Medicago lupulina", "Phleum pratense ", "Plantago
>> lanceolata",
>> "Plantago major ", "Poa pratensis ", "Poa trivialis ", "Prunella vulgaris",
>> "Ranunculus acris ", "Ranunculus bulbosus", "Ranunculus ficaria",
>> "Stellaria media ", "Taraxacum officinale ", "Trifolium pratense ",
>> "Trifolium repens", "Trisetum flavescens", "Veronica arvensis",
>> "Veronica chamaedrys", "Veronica serpyllifolia ", "Agrostis stolonifera",
>> "Festuca pratensis ", "Lamium purpureum", "Poa supina", "Rumex obtusifolius",
>> "", "", "", "", "", ""), `503150` = c("Agrostis capillaris",
>> "Ajuga reptans", "Alchemilla vulgaris ", "Anthoxanthum odoratum ",
>> "Asarum europaeum", "Briza media", "Campanula rhomboidalis",
>> "Cardamine pratensis ", "Carex montana", "Carex pallescens",
>> "Carum carvi", "Colchicum autumnale", "Crocus albiflorus", "Cruciata laevipes",
>> "Dactylis glomerata", "Deschampsia cespitosa", "Euphorbia verrucosa",
>> "Galium verum ", "Geranium sylvaticum", "Geum rivale", "Helictotrichon
>> pubescens",
>> "Hieracium pilosella ", "Hypericum maculatum ", "Knautia dipsacifolia",
>> "Lathyrus pratensis", "Leontodon hispidus ", "Luzula campestris ",
>> "Phyteuma spicatum", "Pimpinella saxifraga ", "Plantago media",
>> "Poa pratensis ", "Polygonum bistorta", "Potentilla aurea", "Potentilla erecta",
>> "Prunella vulgaris", "Ranunculus acris ", "Rhinanthus minor",
>> "Rumex acetosa", "Stellaria graminea", "Trifolium pratense ",
>> "Trifolium repens", "Trollius europaeus", "Veronica chamaedrys",
>> "Veronica officinalis", "Vicia sepium", "Primula elatior", "Plantago
>> lanceolata",
>> "Centaurea montana", "Festuca rubra ", "", "", "", "", "", "",
>> ""), `503154` = c("Acer pseudoplatanus", "Ajuga reptans",
>> "Anthoxanthum odoratum ",
>> "Aster bellidiastrum", "Astrantia major", "Athyrium filix-femina",
>> "Cardamine heptaphylla", "Centaurea montana", "Crepis Mollis",
>> "Crepis paludosa", "Dryopteris dilatata", "Dryopteris filix-mas",
>> "Fragaria vesca", "Geranium sylvaticum", "Hieracium murorum ",
>> "Homogyne alpina", "Knautia dipsacifolia", "Lamium galeobdolon ",
>> "Lonicera nigra", "Luzula sylvatica ", "Melampyrum sylvaticum",
>> "Oxalis acetosella", "Paris quadrifolia", "Phyteuma spicatum",
>> "Picea abies", "Polygonatum verticillatum", "Prenanthes purpurea",
>> "Ranunculus nemorosus ", "Solidago virgaurea ", "Sorbus aucuparia",
>> "Sorbus chamaemespilus", "Vaccinium myrtillus", "Valeriana montana",
>> "Veratrum album ", "Veronica chamaedrys", "Adenostyles alliariae",
>> "Dryopteris carthusiana", "Hieracium prenanthoides", "Luzula luzulina",
>> "Primula elatior", "Ranunculus platanifolius", "Veronica officinalis",
>> "", "", "", "", "", "", ""), `503158` = c("Andromeda polifolia",
>> "Calluna vulgaris", "Eriophorum vaginatum", "Pinus mugo ",
>> "Trichophorum cespitosum",
>> "Vaccinium oxycoccos", "Vaccinium uliginosum ", "Melampyrum pratense",
>> ""), `503162` = c("Abies alba", "Adenostyles glabra", "Athyrium filix-femina",
>> "Dryopteris dilatata", "Fagus sylvatica", "Fragaria vesca", "Galium odoratum",
>> "Geranium sylvaticum", "Hieracium murorum ", "Listera cordata",
>> "Lonicera nigra", "Maianthemum bifolium", "Oxalis acetosella",
>> "Paris quadrifolia", "Picea abies", "Polygonatum verticillatum",
>> "Prenanthes purpurea", "Rubus idaeus", "Rubus saxatilis", "Sorbus aucuparia",
>> "Vaccinium myrtillus", "Dryopteris carthusiana", "Luzula sylvatica ",
>> "Melampyrum sylvaticum", "Rosa arvensis", "Rubus fruticosus ",
>> "", "", "", "", "", "", "", ""), `509122` = c("Bromus hordeaceus",
>> "Cardamine hirsuta", "Cerastium fontanum ", "Clematis vitalba",
>> "Convolvulus arvensis", "Digitaria sanguinalis", "Erodium cicutarium",
>> "Erophila verna ", "Festuca rubra ", "Fraxinus excelsior", "Geranium dissectum",
>> "Lolium perenne", "Picris hieracioides ", "Plantago lanceolata",
>> "Plantago major ", "Poa pratensis ", "Poa trivialis ", "Prunella vulgaris",
>> "Senecio vulgaris", "Taraxacum officinale ", "Trifolium repens",
>> "Veronica persica", "Vitis vinifera ", "Lamium purpureum", "Poa annua",
>> "", "", ""), `509142` = c("Achillea millefolium ", "Agropyron repens",
>> "Agrostis stolonifera", "Arenaria serpyllifolia ", "Arrhenatherum elatius",
>> "Bromus erectus ", "Centaurea jacea ", "Cerastium semidecandrum",
>> "Cirsium arvense", "Convolvulus arvensis", "Dactylis glomerata",
>> "Echium vulgare", "Erodium cicutarium", "Erophila verna ", "Festuca
>> arundinacea ",
>> "Galium mollugo ", "Lolium perenne", "Picris hieracioides ",
>> "Plantago lanceolata", "Plantago major ", "Poa pratensis ", "Poa trivialis ",
>> "Polygonum aviculare ", "Ranunculus acris ", "Sanguisorba minor ",
>> "Senecio vulgaris", "Taraxacum officinale ", "Thymus serpyllum ",
>> "Tripleurospermum perforatum", "Vicia sativa ", "Mercurialis annua",
>> "Galium verum ", "Senecio inaequidens", "Trisetum flavescens",
>> "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
>> "", ""), `509146` = c("Poa pratensis ", "Taraxacum officinale ",
>> "Veronica arvensis", "Veronica hederifolia", "Veronica persica",
>> "Viola tricolor ", "Stellaria media ", "", "", "", "", ""), `509150` =
>> c("Anagallis arvensis",
>> "Capsella bursa-pastoris", "Cerastium fontanum ", "Dactylis glomerata",
>> "Fallopia convolvulus", "Fraxinus excelsior", "Geum urbanum",
>> "Hypochaeris radicata", "Lolium multiflorum", "Phleum pratense ",
>> "Plantago major ", "Poa pratensis ", "Rumex obtusifolius", "Stellaria media ",
>> "Taraxacum officinale ", "Trifolium pratense ", "Veronica arvensis",
>> "Veronica persica", "Viola tricolor ", "Brassica napus", "Lamium purpureum",
>> "Poa annua", "Veronica hederifolia", "", "", "", "", "", "",
>> "", "", ""), `509154` = c("Abies alba", "Acer pseudoplatanus",
>> "Ajuga reptans", "Corylus avellana", "Fagus sylvatica", "Festuca altissima",
>> "Fragaria vesca", "Geranium sylvaticum", "Heracleum sphondylium ",
>> "Hieracium murorum ", "Hordelymus europaeus", "Knautia dipsacifolia",
>> "Lamium galeobdolon ", "Lathyrus vernus ", "Lonicera nigra",
>> "Lonicera xylosteum", "Luzula pilosa", "Melampyrum sylvaticum",
>> "Melica nutans", "Oxalis acetosella", "Picea abies", "Polygonatum
>> verticillatum",
>> "Prenanthes purpurea", "Primula elatior", "Rosa pendulina", "Rubus idaeus",
>> "Rubus saxatilis", "Sorbus aria", "Sorbus aucuparia", "Vaccinium myrtillus",
>> "Viola reichenbachiana ", "", "", "", ""), `509158` = c("Achillea millefolium ",
>> "Acinos alpinus", "Agrostis capillaris", "Ajuga reptans", "Alchemilla alpina ",
>> "Alchemilla vulgaris ", "Anthoxanthum odoratum ", "Anthyllis vulneraria ",
>> "Arabis ciliata", "Asperula cynanchica", "Bellis perennis", "Briza media",
>> "Campanula rotundifolia", "Carduus defloratus ", "Carlina acaulis",
>> "Carum carvi", "Cerastium arvense ", "Cerastium fontanum ", "Cirsium acaule",
>> "Crocus albiflorus", "Cynosurus cristatus", "Dactylis glomerata",
>> "Euphorbia verrucosa", "Festuca ovina ", "Festuca rubra ", "Galium
>> anisophyllon",
>> "Gentiana lutea", "Gentiana verna", "Hieracium murorum ", "Hieracium
>> pilosella ",
>> "Hippocrepis comosa", "Homogyne alpina", "Leucanthemum vulgare ",
>> "Lotus corniculatus ", "Luzula campestris ", "Medicago lupulina",
>> "Phyteuma orbiculare", "Plantago atrata", "Plantago lanceolata",
>> "Plantago media", "Poa alpina", "Poa pratensis ", "Poa trivialis ",
>> "Potentilla neumanniana", "Ranunculus acris ", "Rumex acetosa",
>> "Scabiosa columbaria", "Sesleria caerulea", "Silene nutans ",
>> "Thymus serpyllum ", "Trifolium pratense ", "Trifolium repens",
>> "Valeriana officinalis ", "Veronica chamaedrys", "Veronica officinalis",
>> "Veronica serpyllifolia ", "Botrychium lunaria", "Hypericum maculatum ",
>> "Polygala alpestris", "Potentilla crantzii", "Ranunculus montanus ",
>> "Rhinanthus minor", "", "", "", "", "", "", "", ""), `509162` =
>> c("Achillea millefolium ",
>> "Agrostis stolonifera", "Alchemilla vulgaris ", "Bellis perennis",
>> "Bromus erectus ", "Cardamine pratensis ", "Carex flacca", "Carum carvi",
>> "Cerastium arvense ", "Cynosurus cristatus", "Dactylis glomerata",
>> "Festuca pratensis ", "Festuca rubra ", "Fraxinus excelsior",
>> "Galium anisophyllon", "Helictotrichon pubescens", "Heracleum sphondylium ",
>> "Hieracium pilosella ", "Leontodon autumnalis", "Lotus corniculatus ",
>> "Medicago lupulina", "Phleum pratense ", "Pimpinella major",
>> "Plantago lanceolata", "Plantago major ", "Plantago media", "Poa annua",
>> "Poa pratensis ", "Poa trivialis ", "Potentilla neumanniana",
>> "Prunella vulgaris", "Ranunculus acris ", "Rumex acetosa", "Rumex obtusifolius",
>> "Sanguisorba minor ", "Stellaria media ", "Taraxacum officinale ",
>> "Thymus serpyllum ", "Trifolium pratense ", "Trifolium repens",
>> "Trisetum flavescens", "Veronica chamaedrys", "Veronica serpyllifolia ",
>> "Vicia cracca ", "Cerastium fontanum ", "Primula elatior", "Ajuga reptans",
>> "Glechoma hederacea ", "Galeopsis tetrahit", "Euphrasia rostkoviana",
>> "Campanula rotundifolia", "Senecio jacobaea", "Cirsium vulgare",
>> "Cirsium arvense", "Crepis Mollis", "Carex hirta", "Agrostis capillaris",
>> "", "", "", "", "", "", "", ""), `509166` = c("Ajuga reptans",
>> "Alchemilla vulgaris ", "Anthoxanthum odoratum ", "Arrhenatherum elatius",
>> "Bellis perennis", "Carex flacca", "Carum carvi", "Coeloglossum viride",
>> "Crepis Mollis", "Crocus albiflorus", "Cynosurus cristatus",
>> "Dactylis glomerata", "Festuca pratensis ", "Festuca rubra ",
>> "Geum urbanum", "Lathyrus pratensis", "Leucanthemum vulgare ",
>> "Lolium perenne", "Lotus corniculatus ", "Luzula campestris ",
>> "Plantago lanceolata", "Plantago media", "Poa pratensis ", "Poa trivialis ",
>> "Primula veris ", "Prunella vulgaris", "Ranunculus acris ",
>> "Ranunculus montanus ",
>> "Rhinanthus alectorolophus", "Rumex acetosa", "Taraxacum officinale ",
>> "Trifolium pratense ", "Trifolium repens", "Veronica chamaedrys",
>> "Veronica serpyllifolia ", "Agrostis capillaris", "Cerastium fontanum ",
>> "Galium anisophyllon", "Geum rivale", "Helictotrichon pubescens",
>> "Phleum pratense ", "Pimpinella saxifraga ", "Plantago major ",
>> "Poa alpina", "Polygonum aviculare ", "Veronica arvensis", "",
>> "", "", "", ""), `515150` = c("Centaurea cyanus", "Chenopodium album",
>> "Poa annua", "Polygonum aviculare ", "Polygonum persicaria",
>> "Trifolium repens", "Viola tricolor ", "Polygonum hydropiper",
>> "", "", "", "", "", ""), `515154` = c("Acer pseudoplatanus",
>> "Achillea millefolium ", "Agrostis capillaris", "Anthoxanthum odoratum ",
>> "Arrhenatherum elatius", "Bromus erectus ", "Campanula rotundifolia",
>> "Cerastium arvense ", "Cerastium fontanum ", "Cerastium glomeratum",
>> "Convolvulus arvensis", "Dactylis glomerata", "Daucus carota",
>> "Fraxinus excelsior", "Galium verum ", "Hypericum perforatum",
>> "Hypochaeris radicata", "Linum catharticum", "Lotus corniculatus ",
>> "Luzula campestris ", "Myosotis ramosissima", "Phleum pratense ",
>> "Pimpinella saxifraga ", "Plantago lanceolata", "Poa pratensis ",
>> "Potentilla neumanniana", "Ranunculus bulbosus", "Rumex acetosa",
>> "Taraxacum officinale ", "Trifolium pratense ", "Trisetum flavescens",
>> "Veronica arvensis", "Veronica chamaedrys", "Ajuga reptans",
>> "Alopecurus pratensis", "Carex flacca", "Dianthus carthusianorum ",
>> "Festuca arundinacea ", "Festuca rubra ", "Galium mollugo ",
>> "Holcus lanatus", "Knautia arvensis", "Scabiosa columbaria",
>> "Thymus serpyllum ", "Veronica serpyllifolia ", "", "", "", "",
>> "", "", "", "", "", ""), `515158` = c("Abies alba", "Acer platanoides",
>> "Acer pseudoplatanus", "Cardamine heptaphylla", "Euphorbia amygdaloides",
>> "Fagus sylvatica", "Festuca altissima", "Fraxinus excelsior",
>> "Galium odoratum", "Lamium galeobdolon ", "Lathyrus vernus ",
>> "Melittis melissophyllum", "Mercurialis perennis", "Oxalis acetosella",
>> "Phyteuma spicatum", "Polygonatum verticillatum", "Prenanthes purpurea",
>> "Rubus idaeus", "Viola reichenbachiana ", "Hordelymus europaeus",
>> "", "", "", ""), `515162` = c("Acer pseudoplatanus", "Adenostyles alliariae",
>> "Agrostis capillaris", "Ajuga reptans", "Arabis ciliata", "Asplenium viride",
>> "Aster bellidiastrum", "Carex ornithopoda", "Centaurea montana",
>> "Chaerophyllum hirsutum ", "Dryopteris filix-mas", "Epilobium montanum",
>> "Festuca rubra ", "Fragaria vesca", "Galium anisophyllon", "Geranium
>> sylvaticum",
>> "Hieracium murorum ", "Homogyne alpina", "Lamium galeobdolon ",
>> "Leontodon hispidus ", "Leucanthemum vulgare ", "Lonicera nigra",
>> "Luzula luzulina", "Oxalis acetosella", "Paris quadrifolia",
>> "Phyteuma spicatum", "Picea abies", "Polygonatum verticillatum",
>> "Polystichum lonchitis", "Ranunculus nemorosus ", "Rubus idaeus",
>> "Saxifraga rotundifolia", "Silene vulgaris ", "Sorbus aucuparia",
>> "Vaccinium myrtillus", "Vaccinium vitis-idaea", "Valeriana montana",
>> "Veronica officinalis", "Veronica urticifolia", "Viola biflora",
>> "Knautia dipsacifolia", "Primula elatior", "Rosa pendulina",
>> "Rumex alpestris", "", "", "", "", "", "", "", "", "", "", "",
>> "", ""), `515166` = c("Achillea millefolium ", "Agrostis capillaris",
>> "Alchemilla alpina ", "Alchemilla vulgaris ", "Anthoxanthum odoratum ",
>> "Anthyllis vulneraria ", "Arabis ciliata", "Asperula cynanchica",
>> "Briza media", "Bromus erectus ", "Campanula rotundifolia", "Cardamine
>> pratensis ",
>> "Carex caryophyllea", "Carex flacca", "Carlina acaulis", "Carum carvi",
>> "Cerastium arvense ", "Cerastium fontanum ", "Cirsium acaule",
>> "Coeloglossum viride", "Cynosurus cristatus", "Dactylis glomerata",
>> "Erophila verna ", "Euphorbia cyparissias", "Festuca ovina ",
>> "Festuca rubra ", "Gymnadenia conopsea", "Helianthemum nummularium ",
>> "Helictotrichon pubescens", "Hieracium pilosella ", "Hippocrepis comosa",
>> "Hypericum maculatum ", "Lotus corniculatus ", "Luzula campestris ",
>> "Medicago lupulina", "Pimpinella saxifraga ", "Plantago atrata",
>> "Plantago lanceolata", "Plantago media", "Poa alpina", "Poa trivialis ",
>> "Potentilla erecta", "Potentilla neumanniana", "Primula veris ",
>> "Prunella vulgaris", "Ranunculus bulbosus", "Rhinanthus alectorolophus",
>> "Rhinanthus minor", "Sanguisorba minor ", "Silene nutans ", "Thymus serpyllum ",
>> "Trifolium montanum", "Trifolium pratense ", "Trifolium repens",
>> "Veronica chamaedrys", "Veronica officinalis", "Veronica serpyllifolia ",
>> "Picea abies", "Ranunculus acris ", "Ranunculus montanus ", "Rumex acetosa",
>> "Potentilla crantzii", "Linum catharticum", "Galium anisophyllon",
>> "Leucanthemum vulgare ", "Trisetum flavescens", "Crocus albiflorus",
>> "", "", "", "", "", ""), `521150` = c("Agropyron repens", "Agrostis
>> stolonifera",
>> "Anthriscus sylvestris", "Arrhenatherum elatius", "Bellis perennis",
>> "Bromus hordeaceus", "Cerastium fontanum ", "Crepis biennis",
>> "Dactylis glomerata", "Festuca arundinacea ", "Geum urbanum",
>> "Glechoma hederacea ", "Heracleum sphondylium ", "Holcus lanatus",
>> "Lolium multiflorum", "Lolium perenne", "Myosotis arvensis",
>> "Plantago lanceolata", "Plantago major ", "Poa pratensis ", "Poa trivialis ",
>> "Potentilla reptans", "Ranunculus acris ", "Ranunculus ficaria",
>> "Rumex acetosa", "Stellaria media ", "Taraxacum officinale ",
>> "Trifolium dubium", "Trifolium pratense ", "Trisetum flavescens",
>> "Veronica arvensis", "Veronica chamaedrys", "Veronica hederifolia",
>> "Veronica serpyllifolia ", "Lysimachia nummularia", "Trifolium repens",
>> "Hedera helix", "Daucus carota", "Prunella vulgaris", "Fraxinus excelsior",
>> "Leucanthemum vulgare ", "Festuca pratensis ", "Festuca rubra ",
>> "", "", ""), `521154` = c("Abies alba", "Acer pseudoplatanus",
>> "Anemone nemorosa", "Fagus sylvatica", "Fraxinus excelsior",
>> "Galeopsis tetrahit", "Galium odoratum", "Hedera helix", "Lamium galeobdolon ",
>> "Luzula pilosa", "Rubus fruticosus ", "Viburnum opulus", "Castanea sativa",
>> "Deschampsia cespitosa", "Picea abies", "", "", "", "", "", ""
>> ), `521158` = character(0), `521162` = c("Agropyron repens",
>> "Agrostis capillaris", "Bromus hordeaceus", "Bromus sterilis",
>> "Chenopodium album", "Convolvulus arvensis", "Dactylis glomerata",
>> "Echinochloa crus-galli", "Festuca pratensis ", "Festuca rubra ",
>> "Geranium dissectum", "Hedera helix", "Holcus mollis", "Lamium purpureum",
>> "Lolium multiflorum", "Lolium perenne", "Plantago lanceolata",
>> "Poa pratensis ", "Poa trivialis ", "Polygonum aviculare ", "Ranunculus acris ",
>> "Stellaria media ", "Trifolium pratense ", "Trifolium repens",
>> "Veronica chamaedrys", "Veronica serpyllifolia ", "Cerastium fontanum ",
>> "Rumex acetosa", "Viola tricolor ", "Brassica napus", "Sorbus aria",
>> "Prunus avium", "Acer pseudoplatanus", "Geranium pyrenaicum",
>> "Fraxinus excelsior", "Galium aparine", "Taraxacum officinale ",
>> "Festuca arundinacea ", "Holcus lanatus", "Digitaria sanguinalis",
>> "Setaria pumila", "", "", "", "", "", "", "", "", "", ""), `521166` =
>> c("Acer platanoides",
>> "Acer pseudoplatanus", "Adoxa moschatellina", "Alliaria petiolata",
>> "Anthriscus sylvestris", "Arrhenatherum elatius", "Arum maculatum",
>> "Chaerophyllum aureum", "Clinopodium vulgare", "Convolvulus arvensis",
>> "Crataegus monogyna ", "Fraxinus excelsior", "Galium aparine",
>> "Galium odoratum", "Geranium robertianum ", "Glechoma hederacea ",
>> "Hedera helix", "Lamium maculatum", "Lapsana communis", "Poa nemoralis",
>> "Poa trivialis ", "Ranunculus bulbosus", "Rubus caesius", "Taraxacum
>> officinale ",
>> "Urtica dioica", "Veronica chamaedrys", "Veronica hederifolia",
>> "Viola alba ", "Agropyron repens", "Brachypodium pinnatum", "Crepis biennis",
>> "Dactylis glomerata", "Euonymus europea", "Festuca rubra ", "Galium mollugo ",
>> "Poa pratensis ", "Quercus petraea", "Ranunculus acris ", "",
>> "", "", "", "", "", "", "", "", "", ""), `521170` = c("Achillea millefolium ",
>> "Agrostis capillaris", "Alchemilla vulgaris ", "Anthoxanthum odoratum ",
>> "Bromus erectus ", "Cardamine pratensis ", "Carex flacca", "Carum carvi",
>> "Cerastium fontanum ", "Crepis Mollis", "Cynosurus cristatus",
>> "Dactylis glomerata", "Festuca pratensis ", "Galium verum ",
>> "Helictotrichon pubescens", "Hypericum perforatum", "Lathyrus pratensis",
>> "Leucanthemum vulgare ", "Lolium perenne", "Lotus corniculatus ",
>> "Luzula campestris ", "Pimpinella saxifraga ", "Plantago lanceolata",
>> "Poa pratensis ", "Poa trivialis ", "Prunella vulgaris", "Ranunculus acris ",
>> "Rumex acetosa", "Taraxacum officinale ", "Trifolium pratense ",
>> "Trifolium repens", "Trisetum flavescens", "Veronica chamaedrys",
>> "Veronica serpyllifolia ", "Vicia sepium", "Anemone nemorosa",
>> "Hypericum maculatum ", "Rhinanthus minor", "Leontodon autumnalis",
>> "Festuca rubra ", "Crocus albiflorus", "", ""), `521174` = c("Abies alba",
>> "Acer pseudoplatanus", "Corylus avellana", "Euphorbia dulcis",
>> "Fagus sylvatica", "Galium odoratum", "Hedera helix", "Lonicera xylosteum",
>> "Mercurialis perennis", "Pinus sylvestris", "Viola reichenbachiana ",
>> "Fraxinus excelsior", "Picea abies", "", ""), `521178` = c("Abies alba",
>> "Acer pseudoplatanus", "Anemone nemorosa", "Cardamine heptaphylla",
>> "Carex muricata ", "Corylus avellana", "Dactylis glomerata",
>> "Dryopteris filix-mas", "Fagus sylvatica", "Fragaria vesca",
>> "Galium odoratum", "Geranium robertianum ", "Heracleum sphondylium ",
>> "Hieracium murorum ", "Hordelymus europaeus", "Knautia dipsacifolia",
>> "Lamium galeobdolon ", "Lathyrus vernus ", "Lonicera nigra",
>> "Lonicera xylosteum", "Luzula sylvatica ", "Melica nutans",
>> "Mercurialis perennis",
>> "Milium effusum", "Moehringia trinervia", "Mycelis muralis",
>> "Oxalis acetosella", "Polygonatum verticillatum", "Ranunculus aconitifolius",
>> "Ribes alpinum", "Ribes petraeum", "Rosa pendulina", "Rubus idaeus",
>> "Sambucus racemosa", "Solidago virgaurea ", "Sorbus aria", "Sorbus aucuparia",
>> "Veronica chamaedrys", "Viola reichenbachiana ", "Ajuga reptans",
>> "Fraxinus excelsior", "Hypericum hirsutum", "Phyteuma spicatum",
>> "Primula elatior", "", "", "", "", "", ""), `527154` = c("Achillea
>> millefolium ",
>> "Apera spica-venti", "Brassica napus", "Daucus carota", "Equisetum arvense",
>> "Euphorbia platyphyllos", "Fallopia convolvulus", "Lolium multiflorum",
>> "Medicago sativa", "Papaver rhoeas", "Poa annua", "Rumex obtusifolius",
>> "Sherardia arvensis", "Sonchus asper", "Taraxacum officinale ",
>> "Tripleurospermum perforatum", "Veronica persica", "Viola tricolor ",
>> "Chenopodium album", "Cerastium fontanum ", "Polygonum persicaria",
>> "Fagopyrum esculentum", "Anagallis arvensis", "Oxalis fontana",
>> "Convolvulus arvensis", "Myosotis arvensis", "Plantago major ",
>> "Veronica hederifolia", "Poa trivialis ", "Lolium perenne", "Setaria pumila",
>> "", "", "", "", "", "", "", "", ""), `527158` = c("Agropyron repens",
>> "Festuca pratensis ", "Polygonum aviculare ", "Sinapis arvensis",
>> "Brassica napus", "Viola tricolor ", "", "", "", "", ""), `527162` =
>> c("Aethusa cynapium",
>> "Capsella bursa-pastoris", "Chenopodium album", "Chenopodium polyspermum",
>> "Plantago major ", "Poa annua", "Polygonum aviculare ", "Polygonum
>> lapathifolium ",
>> "Solanum nigrum ", "Stellaria media ", "Taraxacum officinale ",
>> "Anagallis arvensis", "Atriplex patula", "Brassica napus", "Matricaria
>> discoidea",
>> "Polygonum persicaria", "Rumex obtusifolius", "Sonchus oleraceus",
>> "Trifolium repens", "Tripleurospermum perforatum", "Viola tricolor ",
>> "", "", "", "", "", ""), `527166` = c("Abies alba", "Acer pseudoplatanus",
>> "Anemone nemorosa", "Carpinus betulus", "Corylus avellana", "Fagus sylvatica",
>> "Fraxinus excelsior", "Hedera helix", "Lamium galeobdolon ",
>> "Phyteuma spicatum", "Rubus fruticosus ", "", "", "", ""), `527170` =
>> c("Acer opalus",
>> "Asplenium ruta-muraria", "Brachypodium sylvaticum", "Campanula rotundifolia",
>> "Carex digitata", "Carex halleriana", "Crataegus monogyna ",
>> "Euphorbia dulcis", "Fraxinus excelsior", "Hedera helix", "Hepatica nobilis",
>> "Hieracium murorum ", "Hippocrepis emerus", "Ligustrum vulgare",
>> "Melittis melissophyllum", "Primula acaulis", "Sesleria caerulea",
>> "Sorbus aria", "Taxus baccata", "Teucrium chamaedrys", "Thymus serpyllum ",
>> "Bromus erectus ", "Melica nutans", "Melica uniflora", "Mercurialis perennis",
>> "Viola hirta", "", "", "", "", "", "", "", "", "", "", "", "",
>> "", "", "", "", ""), `527174` = c("Abies alba", "Corylus avellana",
>> "Fagus sylvatica", "Fragaria vesca", "Fraxinus excelsior", "Galium odoratum",
>> "Galium rotundifolium", "Hedera helix", "Hieracium murorum ",
>> "Juglans regia", "Luzula pilosa", "Picea abies", "Rubus fruticosus ",
>> "Rubus idaeus", "Sorbus aria", "Viola reichenbachiana ", "Euonymus europea",
>> "Quercus petraea", "", "", "", "", ""), `527178` = c("Arabidopsis thaliana",
>> "Bellis perennis", "Bromus hordeaceus", "Capsella bursa-pastoris",
>> "Cardamine hirsuta", "Cerastium fontanum ", "Dactylis glomerata",
>> "Lolium multiflorum", "Medicago sativa", "Myosotis arvensis",
>> "Phleum pratense ", "Plantago lanceolata", "Poa trivialis ",
>> "Ranunculus acris ", "Rumex obtusifolius", "Stellaria media ",
>> "Taraxacum officinale ", "Trifolium pratense ", "Veronica arvensis",
>> "Veronica persica", "Arrhenatherum elatius", "Erophila verna ",
>> "Festuca pratensis ", "Lamium purpureum", "Poa pratensis ",
>> "Ranunculus bulbosus",
>> "Rumex acetosa", "Trifolium repens", "", "", "", "", ""), `527182` =
>> c("Abies alba",
>> "Acer pseudoplatanus", "Cardamine pentaphyllos", "Dryopteris filix-mas",
>> "Fagus sylvatica", "Fraxinus excelsior", "Galium odoratum", "Lamium
>> galeobdolon ",
>> "Mercurialis perennis", "", ""), `527186` = c("Abies alba", "Acer
>> pseudoplatanus",
>> "Agrostis capillaris", "Ajuga reptans", "Alchemilla vulgaris ",
>> "Anemone nemorosa", "Campanula rotundifolia", "Cardamine hirsuta",
>> "Carex digitata", "Carex sylvatica", "Dactylis glomerata",
>> "Dactylorhiza maculata ",
>> "Epilobium montanum", "Euphorbia cyparissias", "Fagus sylvatica",
>> "Festuca rubra ", "Fragaria vesca", "Hieracium murorum ", "Lonicera nigra",
>> "Lonicera xylosteum", "Luzula pilosa", "Melampyrum sylvaticum",
>> "Oxalis acetosella", "Paris quadrifolia", "Picea abies", "Poa nemoralis",
>> "Potentilla erecta", "Ranunculus acris ", "Sorbus aria", "Sorbus aucuparia",
>> "Trifolium pratense ", "Veronica chamaedrys", "Vicia sepium",
>> "Viola reichenbachiana ", "Ranunculus nemorosus ", "Arabis ciliata",
>> "Primula elatior", "Rubus idaeus", "Galeopsis tetrahit", "Veronica officinalis",
>> "Galium odoratum", "Taraxacum officinale ", "Luzula luzulina",
>> "Hordelymus europaeus", "Anthoxanthum odoratum ", "Polygonatum verticillatum",
>> "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""
>> ), `527190` = c("Abies alba", "Acer pseudoplatanus", "Ajuga reptans",
>> "Athyrium filix-femina", "Dryopteris filix-mas", "Fagus sylvatica",
>> "Galeopsis tetrahit", "Geranium robertianum ", "Hieracium murorum ",
>> "Lonicera nigra", "Moehringia trinervia", "Mycelis muralis",
>> "Oxalis acetosella", "Picea abies", "Polygonatum verticillatum",
>> "Primula elatior", "Ribes petraeum", "Rubus idaeus", "Sambucus racemosa",
>> "Sorbus aucuparia", "Dactylis glomerata", "Epilobium montanum",
>> "Phyteuma spicatum", "Taraxacum officinale ", "Veronica chamaedrys",
>> "", "", "", "", "", "", ""), `527194` = c("Agrostis capillaris",
>> "Alchemilla vulgaris ", "Alopecurus pratensis", "Anthoxanthum odoratum ",
>> "Anthriscus sylvestris", "Cerastium fontanum ", "Crepis biennis",
>> "Dactylis glomerata", "Fraxinus excelsior", "Heracleum sphondylium ",
>> "Lolium perenne", "Myosotis scorpioides", "Phleum pratense ",
>> "Plantago lanceolata", "Plantago major ", "Poa pratensis ", "Poa trivialis ",
>> "Ranunculus acris ", "Rumex acetosa", "Rumex obtusifolius",
>> "Sanguisorba officinalis",
>> "Silene dioica", "Taraxacum officinale ", "Trifolium repens",
>> "Trisetum flavescens", "Veronica arvensis", "Veronica serpyllifolia ",
>> "Vicia cracca ", "Vicia sepium", "Cardamine pratensis ", "Trifolium pratense ",
>> ""), `527198` = c("Abies alba", "Ajuga reptans", "Alchemilla vulgaris ",
>> "Anemone nemorosa", "Anthoxanthum odoratum ", "Asplenium trichomanes",
>> "Campanula rotundifolia", "Cardamine hirsuta", "Carex ornithopoda",
>> "Carex sylvatica", "Centaurea montana", "Clinopodium vulgare",
>> "Corylus avellana", "Dactylis glomerata", "Dactylorhiza maculata ",
>> "Euphorbia cyparissias", "Festuca rubra ", "Fragaria vesca",
>> "Geranium robertianum ", "Hieracium murorum ", "Hieracium pilosella ",
>> "Hypericum maculatum ", "Lamium galeobdolon ", "Leucanthemum vulgare ",
>> "Luzula pilosa", "Moehringia muscosa", "Mycelis muralis", "Oxalis acetosella",
>> "Picea abies", "Polygonatum verticillatum", "Potentilla erecta",
>> "Primula elatior", "Ranunculus nemorosus ", "Ranunculus platanifolius",
>> "Rosa pendulina", "Rubus idaeus", "Sedum album", "Senecio ovatus",
>> "Sorbus aucuparia", "Taraxacum officinale ", "Vaccinium myrtillus",
>> "Veronica chamaedrys", "Veronica officinalis", "Vicia sepium",
>> "Viola reichenbachiana ", "Agrostis capillaris", "Cardamine pratensis ",
>> "Epilobium montanum", "Fagus sylvatica", "Gentiana lutea", "Geranium
>> sylvaticum",
>> "Luzula luzulina", "Ranunculus aconitifolius", "Ranunculus lanuginosus",
>> "", "", "", "", "", "")), .Names = c("491114", "491118", "497114",
>> "497118", "497142", "497146", "503114", "503118", "503130", "503134",
>> "503138", "503142", "503146", "503150", "503154", "503158", "503162",
>> "509122", "509142", "509146", "509150", "509154", "509158", "509162",
>> "509166", "515150", "515154", "515158", "515162", "515166", "521150",
>> "521154", "521158", "521162", "521166", "521170", "521174", "521178",
>> "527154", "527158", "527162", "527166", "527170", "527174", "527178",
>> "527182", "527186", "527190", "527194", "527198"))
>>
>>
>>
>>> dput(LCT)
>> structure(list(AFH_8_2_1_1.txt = c("Hypochaeris glabra", "Papaver argemone",
>> "Raphanus raphanistrum", "Vicia tetrasperma", "Vicia villosa",
>> "Anthemis arvensis", "Apera spica-venti", "Aphanes arvensis",
>> "Arabidopsis thaliana", "Matricaria chamomilla", "Scleranthus annuus"
>> ), AFH_8_2_1_2.txt = c("Adonis aestivalis", "Adonis flammea",
>> "Ajuga chamaepitys", "Androsace maxima", "Asperula arvensis",
>> "Bifora radians", "Bupleurum rotundifolium", "Caucalis platycarpos",
>> "Conringia orientalis", "Consolida regalis", "Euphorbia exigua",
>> "Fumaria vaillantii", "Galium tricornutum", "Iberis amara", "Kickxia spuria",
>> "Lathyrus aphaca", "Lathyrus cicera", "Lathyrus tuberosus", "Myagrum
>> perfoliatum",
>> "Nigella arvensis", "Orlaya grandiflora", "Polycnemum arvense",
>> "Reseda phyteuma", "Scandix pecten-veneris", "Silene noctiflora",
>> "Stachys annua", "Thymelaea passerina", "Torilis arvensis", "Turgenia
>> latifolia",
>> "Vaccaria hispanica", "Valerianella rimosa", "Kickxia elatine",
>> "Papaver rhoeas", "Ranunculus arvensis", "Viola arvensis"),
>> AFH_8_2_3_1.txt = c("Chenopodium glaucum",
>> "Chrysanthemum segetum", "Erysimum cheiranthoides", "Galeopsis speciosa",
>> "Oxalis dillenii", "Oxalis fontana", "Chenopodium ficifolium",
>> "Chenopodium polyspermum", "Chenopodium rubrum", "Galinsoga ciliata",
>> "Polygonum persicaria", "Ranunculus repens"), AFH_8_2_3_2.txt =
>> c("Fumaria officinalis",
>> "Mercurialis annua", "Veronica polita", "Allium vineale", "Althaea hirsuta",
>> "Calendula arvensis", "Eranthis hyemalis", "Erucastrum gallicum",
>> "Euphorbia helioscopia", "Euphorbia peplus", "Fumaria schleicheri",
>> "Geranium dissectum", "Geranium rotundifolium", "Lamium hybridum",
>> "Muscari racemosum", "Ornithogalum umbellatum", "Thlaspi alliaceum",
>> "Tulipa sylvestris", "Aethusa cynapium", "Lamium purpureum",
>> "Sonchus oleraceus", "Veronica persica"), AFH_8_2_3_3.txt =
>> c("Amaranthus cruentus",
>> "Digitaria ischaemum", "Galinsoga parviflora", "Panicum miliaceum",
>> "Setaria pumila", "Setaria glauca", "Setaria verticillata",
>> "Amaranthus bouchonii",
>> "Amaranthus retroflexus", "Digitaria sanguinalis", "Echinochloa crus-galli",
>> "Panicum capillare", "Panicum dichotomiflorum"), AFH_8_2_3_4.txt =
>> c("Eragrostis pilosa",
>> "Bufonia paniculata", "Eragrostis cilianensis", "Heliotropium europaeum",
>> "Setaria italica", "Tragus racemosus", "Amaranthus albus", "Amaranthus blitum",
>> "Digitaria sanguinalis", "Eragrostis minor", "Erodium cicutarium",
>> "Portulaca oleracea"), FCH_5_2_2.txt = c("Digitalis purpurea",
>> "Senecio sylvaticus", "Epilobium angustifolium"), FCH_6_6_1.txt =
>> c("Abies alba",
>> "Picea abies", "Vaccinium myrtillus"), FCH_6_6_2.txt = c("Galium triflorum",
>> "Calamagrostis villosa", "Picea abies", "Vaccinium myrtillus"
>> ), FCH_6_6_3.txt = c("Larix decidua", "Pinus cembra", "Rhododendron
>> ferrugineum",
>> "Vaccinium gaultherioides", "Vaccinium myrtillus"), FCH_6_6_4.txt =
>> c("Larix decidua",
>> "Rhododendron ferrugineum", "Vaccinium myrtillus", "Vaccinium vitis-idaea"
>> ), FCL_6_4_1.txt = c("Aster amellus", "Cirsium tuberosum", "Thlaspi montanum",
>> "Calamagrostis varia", "Molinia arundinacea", "Pinus sylvestris"
>> ), FCL_6_4_2.txt = c("Cytisus nigricans", "Daphne cneorum", "Leontodon incanus",
>> "Rhamnus saxatilis", "Thesium rostratum", "Carex alba", "Erica carnea",
>> "Picea abies", "Pinus sylvestris"), FCL_6_4_3.txt = c("Astragalus exscapus",
>> "Astragalus monspessulanus", "Coronilla minima", "Odontites viscosus",
>> "Ononis rotundifolia", "Arctostaphylos uva-ursi", "Carex humilis",
>> "Pinus sylvestris"), FCL_6_5_3.txt = c("Picea abies", "Vaccinium myrtillus"
>> ), FCL_6_6_5.txt = c("Daphne striata", "Erica carnea", "Pinus mugo",
>> "Rhododendron hirsutum"), FDH_5_2_1.txt = c("Arctium nemorosum",
>> "Bromus ramosus", "Geranium bohemicum", "Hypericum hirsutum",
>> "Stachys alpina", "Atropa bella-donna", "Fragaria vesca", "Galeopsis tetrahit",
>> "Rubus idaeus"), FDH_6_1_4.txt = c("Carex brizoides", "Carex pendula",
>> "Carex remota", "Carex strigosa", "Equisetum telmateia", "Malaxis monophyllos",
>> "Matteuccia struthiopteris", "Prunus padus", "Ribes rubrum",
>> "Ulmus laevis", "Fraxinus excelsior", "Quercus robur"), FDH_6_2_3.txt
>> = c("Allium ursinum",
>> "Anemone nemorosa", "Arum maculatum", "Circaea lutetiana", "Fagus sylvatica",
>> "Galium odoratum"), FDL_6_1_1.txt = c("Carex elongata", "Dryopteris cristata",
>> "Galium elongatum", "Hypericum androsaemum", "Osmunda regalis",
>> "Ribes nigrum", "Thelypteris palustris", "Alnus glutinosa"),
>>    FDL_6_1_2.txt = c("Salix fragilis", "Salix viminalis", "Salix x rubens",
>>    "Salix alba"), FDL_6_1_3.txt = c("Alnus incana", "Equisetum hyemale",
>>    "Rubus caesius"), FDL_6_2_2.txt = c("Fagus sylvatica", "Luzula luzuloides",
>>    "Luzula nivea", "Luzula sylvatica", "Melampyrum pratense",
>>    "Quercus petraea"), FDL_6_3_1.txt = c("Aconitum variegatum",
>>    "Campanula latifolia", "Lunaria rediviva", "Phyllitis scolopendrium",
>>    "Polystichum setiferum", "Acer pseudoplatanus", "Mercurialis perennis"
>>    ), FDL_6_3_2.txt = c("Euonymus latifolius", "Staphylea pinnata",
>>    "Acer opalus", "Corylus avellana", "Mercurialis perennis",
>>    "Tilia cordata", "Tilia platyphyllos"), FDL_6_3_3.txt =
>> c("Dactylis polygama",
>>    "Isopyrum thalictroides", "Stellaria holostea", "Anemone nemorosa",
>>    "Carex montana", "Carex pilosa", "Carpinus betulus", "Festuca heterophylla",
>>    "Quercus petraea", "Quercus robur"), FDL_6_3_4.txt = c("Asplenium
>> onopteris",
>>    "Buglossoides purpurocaerulea", "Lonicera etrusca", "Mercurialis ovata",
>>    "Viola suavis", "Acer opalus", "Carex montana", "Cornus mas",
>>    "Hippocrepis emerus", "Quercus petraea", "Quercus pubescens"
>>    ), FDL_6_3_5.txt = c("Celtis australis", "Cnidium silaifolium",
>>    "Lathyrus venetus", "Cornus mas", "Fraxinus ornus", "Hippocrepis emerus",
>>    "Ostrya carpinifolia", "Quercus pubescens", "Teucrium chamaedrys"
>>    ), FDL_6_3_6.txt = c("Festuca heterophylla", "Luzula nivea",
>>    "Molinia arundinacea", "Pteridium aquilinum", "Quercus petraea"
>>    ), FDL_6_3_7.txt = c("Castanea sativa", "Festuca heteraphylla",
>>    "Luzula nivea", "Molinia arundinacea", "Pteridium aquilinum",
>>    "Quercus petraea"), FDL_6_5_1.txt = c("Betula pendula", "Betula pubescens",
>>    "Molinia caerulea", "Vaccinium myrtillus"), FMH_6_2_4.txt =
>> c("Cardamine heptaphylla",
>>    "Fagus sylvatica", "Galium odoratum", "Lamium galeobdolon",
>>    "Mercurialis perennis"), FMH_6_2_5.txt = c("Abies alba",
>>    "Adenostyles alliariae", "Athyrium filix-femina", "Fagus sylvatica",
>>    "Hordelymus europaeus", "Picea abies"), FML_6_2_1.txt =
>> c("Cephalanthera damasonium",
>>    "Cephalanthera longifolia", "Cephalanthera rubra", "Acer opalus",
>>    "Carex alba", "Carex flacca", "Carex montana", "Fagus sylvatica",
>>    "Quercus petraea", "Sesleria caerulea", "Taxus baccata"),
>>    FML_6_4_4.txt = c("Chimaphila umbellata", "Diphasiastrum complanatum",
>>    "Calluna vulgaris", "Pinus sylvestris", "Vaccinium myrtillus"
>>    ), FML_6_5_2.txt = c("Pinus mugo", "Vaccinium myrtillus",
>>    "Vaccinium uliginosum"), GDL_4_2_1_1.txt = c("Festuca rupicola",
>>    "Festuca valesiaca", "Stipa capillata", "Stipa eriocaulis Borbas",
>>    "Achillea tomentosa", "Alyssum alpestre", "Artemisia vallesiaca",
>>    "Astragalus onobrychis", "Centaurea valesiaca", "Dracocephalum austriacum",
>>    "Ephedra helvetica", "Linum austriacum", "Onosma helvetica",
>>    "Onosma pseudoarenaria", "Poa molinerii", "Poa perconcinna",
>>    "Potentilla cinerea", "Pulsatilla halleri", "Scabiosa triandra",
>>    "Carex humilis", "Koeleria macrantha", "Koeleria vallesiana"
>>    ), GDL_4_2_1_2.txt = c("Adonis vernalis", "Astragalus exscapus",
>>    "Hypochaeris maculata", "Inula spiraeifolia", "Knautia purpurea",
>>    "Onobrychis arenaria", "Oxytropis halleri", "Potentilla alba",
>>    "Potentilla arenaria", "Scabiosa ochroleuca", "Stipa pennata",
>>    "Tephroseris integrifolia", "Thesium linophyllon", "Veronica prostrata",
>>    "Brachypodium pinnatum", "Bromus erectus", "Carex humilis"
>>    ), GDL_4_2_2.txt = c("Allium carinatum", "Anthyllis montana",
>>    "Eryngium campestre", "Helianthemum apenninum", "Helianthemum canum",
>>    "Potentilla leucopolitana", "Pulsatilla vulgaris", "Salvia sclarea",
>>    "Anthericum liliago", "Artemisia campestris", "Bromus erectus",
>>    "Festuca guestfalica", "Fumana procumbens", "Globularia bisnagarica",
>>    "Hippocrepis comosa", "Linum tenuifolium", "Potentilla neumanniana",
>>    "Stachys recta", "Teucrium chamaedrys", "Trinia glauca",
>>    "Veronica spicata"), GDL_4_2_3.txt = c("Chrysopogon grylus",
>>    "Heteropogon contortus", "Bromus erectus", "Cleistogenes serotina",
>>    "Danthonia alpina", "Bothriochloa ischaemum", "Bromus erectus",
>>    "Carex humilis"), GDL_4_2_4.txt = c("Anacamptis pyramidalis",
>>    "Euphorbia verrucosa", "Gentiana ciliata", "Gentiana germanica",
>>    "Himantoglossum hircinum", "Ononis repens", "Ophrys apifera",
>>    "Ophrys apifera", "Ophrys araneola", "Ophrys holosericea",
>>    "Ophrys sphegodes", "Orchis morio", "Orchis simia", "Orchis tridentate",
>>    "Polygala calcarea", "Prunella laciniata", "Spiranthes spiralis",
>>    "Brachypodium pinnatum", "Bromus erectus", "Festuca ovina",
>>    "Onobrychis viciifolia", "Sanguisorba minor"), GDL_4_3_1.txt =
>> c("Arabis ciliata",
>>    "Arenaria grandiflora", "Bupleurum ranunculoides", "Carex baldensis",
>>    "Hieracium pilosum", "Hieracium villosum", "Koeleria eriostachya",
>>    "Oxytropis helvetica", "Oxytropis jacquinii", "Scutellaria alpina",
>>    "Taraxacum aquilonare", "Carex austroalpina", "Carex sempervirens",
>>    "Festuca curvula", "Sesleria caerulea"), GDL_4_3_5.txt = c("Arnica montana",
>>    "Geum montanum", "Ajuga pyramidalis", "Campanula barbata",
>>    "Gentiana acaulis", "Hypochaeris uniflora", "Luzula alpina",
>>    "Meum athamanticum", "Pseudorchis albida", "Agrostis schraderiana",
>>    "Antennaria dioica", "Leontodon helveticus", "Nardus stricta"
>>    ), GDL_4_3_6.txt = c("Armeria alpina", "Euphrasia christii",
>>    "Koeleria hirsuta", "Laserpitium halleri", "Sempervivum wulfenii",
>>    "Valeriana celtica", "Festuca acuminata", "Festuca paniculata",
>>    "Festuca scabriculmis", "Helictotrichon pratense", "Poa violacea"
>>    ), GFGH_4_5_3.txt = c("Crepis capillaris", "Gaudinia fragilis",
>>    "Leontodon autumnalis", "Phleum bertolonii", "Senecio jacobaea",
>>    "Trifolium patens", "Veronica filiformis", "Bellis perennis",
>>    "Cynosurus cristatus", "Festuca pratensis", "Festuca rubra",
>>    "Lolium perenne", "Prunella vulgaris", "Trifolium repens"
>>    ), GFGH_4_5_4.txt = c("Cerastium fontanum", "Crepis aurea",
>>    "Phleum rhaeticum", "Festuca rubra", "Poa alpina", "Trifolium badium"
>>    ), GFMH_4_5_1.txt = c("Arrhenatherum elatius", "Campanula patula",
>>    "Crepis biennis", "Geranium pratense", "Malva moschata",
>>    "Anthriscus sylvestris", "Bromus hordeaceus", "Dactylis glomerata",
>>    "Festuca pratensis", "Holcus lanatus", "Poa trivialis",
>> "Rhinanthus alectorolophus",
>>    "Rumex acetosa"), GFMH_4_5_2.txt = c("Campanula rhomboidalis",
>>    "Cardaminopsis halleri", "Centaurea pseudophrygia", "Muscari botryoides",
>>    "Narcissus radiiflorus", "Polygonum alpinum", "Thlaspi brachypetalum",
>>    "Geranium sylvaticum", "Polygonum bistorta", "Trisetum flavescens",
>>    "Trollius europaeus"), GWL_2_2_1.txt = c("Carex acuta", "Carex
>> appropinquata",
>>    "Carex elata", "Carex riparia\xca", "Carex vesicaria", "Carex cespitosa",
>>    "Carex disticha", "Carex juncella", "Peucedanum palustre",
>>    "Rorippa x anceps", "Scutellaria galericulata", "Senecio paludosus",
>>    "Carex paniculata", "Carex rostrata", "Carex vulpina"),
>> GWL_2_2_2.txt = c("Carex canescens",
>>    "Eriophorum scheuchzeri", "Cardamine matthioli", "Carex echinata",
>>    "Carex norvegica", "Carex paupercula", "Phleum alpinum",
>>    "Stellaria palustris", "Viola palustris", "Carex nigra",
>>    "Trichophorum cespitosum"), GWL_2_2_3.txt = c("Carex davalliana",
>>    "Schoenus ferrugineus", "Schoenus nigricans", "Carex dioica",
>>    "Dactylorhiza cruenta", "Eriophorum latifolium", "Liparis loeselii",
>>    "Orchis palustris", "Pinguicula leptoceras", "Primula farinosa",
>>    "Spiranthes aestivalis", "Swertia perennis", "Carex panicea",
>>    "Trichophorum cespitosum", "Typha minima"), GWL_2_3_1.txt =
>> c("Allium angulosum",
>>    "Allium suaveolens", "Anagallis tenella", "Carex tomentosa",
>>    "Cirsium tuberosum", "Festuca trichophylla", "Gentiana amarella",
>>    "Gentiana asclepiadea", "Gentiana pneumonanthe", "Gladiolus imbricatus",
>>    "Gladiolus palustris", "Gratiola officinalis", "Iris sibirica",
>>    "Juncus acutiflorus", "Laserpitium prutenicum", "Lathyrus palustris",
>>    "Lotus maritimus", "Oenanthe lachenalii", "Oenanthe peucedanifolia",
>>    "Ophioglossum vulgatum", "Scorzonera humilis", "Selinum carvifolia",
>>    "Serratula tinctoria", "Sisyrinchium montanum", "Viola elatior",
>>    "Viola persicifolia", "Viola pumila", "Juncus conglomeratus",
>>    "Molinia caerulea"), GWL_2_3_2.txt = c("Bromus racemosus",
>>    "Cirsium rivulare", "Crepis paludosa", "Fritillaria meleagris",
>>    "Lotus pedunculatus", "Myosotis nemorosa", "Senecio aquaticus",
>>    "Scirpus sylvaticus", "Caltha palustris", "Polygonum bistorta",
>>    "Ranunculus aconitifolius"), GWL_4_3_3.txt = c("Carex ferruginea",
>>    "Agrostis schleicheri", "Crepis bocconei", "Dianthus superbus",
>>    "Festuca norica", "Festuca pulchella", "Lathyrus occidentalis",
>>    "Pedicularis foliosa", "Pedicularis rostratospicata", "Phleum hirsutum",
>>    "Serratula tinctoria", "Traunsteinera globosa", "Calamagrostis varia",
>>    "Festuca violacea", "Laserpitium latifolium"), PL_2_5_1.txt =
>> c("Anagallis minima",
>>    "Blackstonia acuminata", "Blackstonia perfoliata", "Carex bohemica",
>>    "Centaurium pulchellum", "Cyperus michelianus", "Eleocharis ovata",
>>    "Gnaphalium luteoalbum", "Gypsophila muralis", "Illecebrum verticillatum",
>>    "Isolepis setacea", "Juncus ambiguus", "Juncus capitatus",
>>    "Juncus sphaerocarpus", "Juncus tenageia", "Limosella aquatica",
>>    "Lindernia procumbens", "Ludwigia palustris", "Lythrum hyssopifolia",
>>    "Lythrum portula", "Montia fontana", "Myosurus minimus",
>>    "Radiola linoides", "Ranunculus sardous", "Sagina apetala",
>>    "Sagina nodosa", "Sagina subulata", "Schoenoplectus supinus",
>>    "Spergularia segetalis", "Veronica acinifolia", "Veronica anagalloides",
>>    "Veronica scutellata", "Cyperus flavescens", "Cyperus fuscus",
>>    "Juncus bufonius"), PL_2_5_2.txt = c("Bidens bipinnata",
>>    "Bidens cernua", "Bidens connata", "Bidens frondosa", "Bidens radiata",
>>    "Bidens subalternans", "Brassica nigra", "Corrigiola litoralis",
>>    "Potentilla supina", "Pulicaria vulgaris", "Ranunculus sceleratus",
>>    "Rumex maritimus", "Sisymbrium supinum", "Veronica peregrina",
>>    "Alopecurus aequalis", "Bidens tripartita", "Impatiens balfourii",
>>    "Polygonum hydropiper", "Polygonum lapathifolium", "Polygonum minus",
>>    "Polygonum mite"), PL_3_2_1_1.txt = c("Calamagrostis pseudophragmites",
>>    "Chondrilla chondrilloides", "Erigeron acer", "Glaucium flavum",
>>    "Hieracium staticifolium", "Ptychotis saxifraga", "Scrophularia canina",
>>    "Trifolium saxatile", "Epilobium dodonaei", "Epilobium fleischeri"
>>    ), PL_3_3_1_5.txt = c("Calamintha nepetoides", "Centranthus angustifolius",
>>    "Erysimum ochroleucum", "Iberis linifolia", "Linaria alpina",
>>    "Scrophularia juratensis", "Achnatherum calamagrostis", "Galeopsis
>> angustifolia",
>>    "Rumex scutatus"), PL_3_3_2_3.txt = c("Anarrhinum bellidifolium",
>>    "Epilobium lanceolatum", "Galeopsis segetum", "Rumex scutatus",
>>    "Sedum album", "Senecio viscosus"), PL_4_1_1.txt = c("Arabis auriculata",
>>    "Cerastium brachypetalum", "Cerastium pumilum", "Clypeola jonthlaspi",
>>    "Dianthus gratianopolitanus", "Erophila praecox", "Micropus erectus",
>>    "Minuartia hybrida", "Minuartia rubra", "Veronica praecox",
>>    "Alyssum alyssoides", "Hornungia petraea", "Poa badensis",
>>    "Saxifraga tridactylites", "Sedum album", "Sedum sexangulare"
>>    ), PL_4_1_3.txt = c("Aira caryophyllea", "Aira elegantissima",
>>    "Cruciata pedemontana", "Filago minima", "Filago pyramidata",
>>    "Gagea saxatilis", "Minuartia viscosa", "Myosotis discolor",
>>    "Myosotis ramosissima", "Myosotis stricta", "Potentilla argentea",
>>    "Scleranthus annuus", "Vicia lathyroides", "Vulpia bromoides",
>>    "Arabidopsis thaliana", "Poa bulbosa", "Sedum montanum",
>>    "Veronica verna"), PL_4_6_1.txt = c("Anthemis tinctoria",
>>    "Asparagus officinalis", "Calepina irregularis", "Carex praecox",
>>    "Centaurea stoebe", "Chondrilla juncea", "Falcaria vulgaris",
>>    "Melica transsilvanica", "Scorzonera laciniata", "Tragopogon dubius",
>>    "Agropyron intermedium", "Agropyron repens", "Bromus inermis",
>>    "Cardaria draba", "Convolvulus arvensis"), PL_5_3_6.txt =
>> c("Myricaria germanica",
>>    "Calamagrostis epigejos", "Hippopha\x91 rhamnoides", "Salix daphnoides",
>>    "Salix elaeagnos", "Salix purpurea"), PL_6_3_9.txt = c("Robinia
>> pseudoacacia",
>>    "Bromus sterilis", "Chelidonium majus", "Clematis vitalba"
>>    ), PL_7_1_1.txt = c("Agropyron pungens", "Alopecurus geniculatus",
>>    "Apium repens", "Barbarea vulgaris", "Holoschoenus romanus",
>>    "Inula britannica", "Juncus compressus", "Mentha pulegium",
>>    "Mentha suaveolens", "Plantago major", "Pulicaria dysenterica",
>>    "Teucrium scordium", "Trifolium fragiferum", "Agropyron repens",
>>    "Agrostis stolonifera", "Carex hirta", "Carex otrubae", "Equisetum arvense",
>>    "Festuca arundinacea", "Juncus inflexus", "Mentha longifolia",
>>    "Potentilla anserina", "Potentilla reptans", "Ranunculus repens",
>>    "Rumex conglomeratus", "Rumex crispus", "Rumex obtusifolius"
>>    ), PL_7_1_3.txt = c("Gagea fragifera", "Alchemilla vulgaris",
>>    "Plantago major", "Poa supina"), PL_7_1_4.txt = c("Chenopodium botrys",
>>    "Consolida ajacis", "Cynosurus echinatus", "Eruca sativa",
>>    "Erysimum repandum", "Hirschfeldia incana", "Hymenolobus pauciflorus",
>>    "Lepidium densiflorum", "Lepidium graminifolium", "Sinapis alba",
>>    "Sisymbrium austriacum", "Stellaria pallida", "Asperugo procumbens",
>>    "Bromus sterilis", "Bromus tectorum", "Cirsium arvense",
>>    "Descurainia sophia", "Hordeum murinum", "Lactuca serriola",
>>    "Lepidium virginicum", "Malva neglecta", "Sisymbrium officinale",
>>    "Tripleurospermum perforatum"), PL_7_1_5.txt = c("Anchusa officinalis",
>>    "Arabis nova", "Carthamus lanatus", "Centaurea solstitialis",
>>    "Chenopodium urbicum", "Echinops sphaerocephalus", "Marrubium vulgare",
>>    "Nepeta cataria", "Nepeta nuda", "Salvia sylvestris", "Silybum marianum",
>>    "Stachys germanica", "Verbascum phlomoides", "Artemisia absinthium",
>>    "Carduus nutans", "Cirsium arvense", "Cirsium eriophorum",
>>    "Cynoglossum officinale", "Onopordum acanthium", "Verbascum densiflorum"
>>    ), PL_7_1_6.txt = c("Ambrosia psilostachya", "Berteroa incana",
>>    "Crepis setosa", "Euphorbia virgata", "Oenothera glazioviana",
>>    "Oenothera parviflora", "Rumex thyrsiflorus", "Tanacetum vulgare",
>>    "Daucus carota", "Erigeron annuus", "Melilotus albus", "Melilotus
>> officinalis",
>>    "Oenothera biennis", "Pastinaca sativa", "Poa compressa"),
>>    PL_7_1_7.txt = c("Tephroseris tenuifolia", "Aconitum compactum",
>>    "Chenopodium bonus-henricus", "Cirsium spinosissimum", "Rumex alpinus",
>>    "Senecio alpinus"), PL_7_1_8.txt = c("Armoracia rusticana",
>>    "Ballota nigra", "Conium maculatum", "Lamium album", "Leonurus cardiaca",
>>    "Mentha spicata", "Rumex longifolius", "Rumex patientia",
>>    "Symphytum asperum", "Arctium lappa", "Arctium minus", "Arctium tomentosum",
>>    "Artemisia vulgaris", "Bunias orientalis", "Cirsium arvense",
>>    "Cirsium vulgare", "Phytolacca americana", "Urtica dioica"
>>    ), PUEH_4_0.txt = c("Cuscuta campestris", "Phacelia tanacetifolia",
>>    "Sanguisorba dodecandra", "Trifolium alexandrinum", "Trifolium incarnatum",
>>    "Trifolium incarnatum ssp. molinerii", "Trifolium resupinatum",
>>    "Trifolium subterraneum", "Trigonella caerulea", "Vicia sativa",
>>    "Agrostis stolonifera", "Festuca rubra", "Lolium perenne",
>>    "Poa annua"), PUEH_7_1_2.txt = c("Amaranthus deflexus", "Centaurea
>> calcitrapa",
>>    "Coronopus didymus", "Coronopus squamatus", "Sclerochloa dura",
>>    "Cynodon dactylon", "Matricaria discoidea", "Plantago major",
>>    "Poa annua", "Polygonum arenastrum", "Polygonum aviculare"
>>    ), UEH_7_2_2.txt = c("Euphorbia humifusa", "Euphorbia maculata",
>>    "Euphorbia prostrata", "Polycarpon tetraphyllum", "Poa annua",
>>    "Sagina procumbens")), .Names = c("AFH_8_2_1_1.txt", "AFH_8_2_1_2.txt",
>> "AFH_8_2_3_1.txt", "AFH_8_2_3_2.txt", "AFH_8_2_3_3.txt", "AFH_8_2_3_4.txt",
>> "FCH_5_2_2.txt", "FCH_6_6_1.txt", "FCH_6_6_2.txt", "FCH_6_6_3.txt",
>> "FCH_6_6_4.txt", "FCL_6_4_1.txt", "FCL_6_4_2.txt", "FCL_6_4_3.txt",
>> "FCL_6_5_3.txt", "FCL_6_6_5.txt", "FDH_5_2_1.txt", "FDH_6_1_4.txt",
>> "FDH_6_2_3.txt", "FDL_6_1_1.txt", "FDL_6_1_2.txt", "FDL_6_1_3.txt",
>> "FDL_6_2_2.txt", "FDL_6_3_1.txt", "FDL_6_3_2.txt", "FDL_6_3_3.txt",
>> "FDL_6_3_4.txt", "FDL_6_3_5.txt", "FDL_6_3_6.txt", "FDL_6_3_7.txt",
>> "FDL_6_5_1.txt", "FMH_6_2_4.txt", "FMH_6_2_5.txt", "FML_6_2_1.txt",
>> "FML_6_4_4.txt", "FML_6_5_2.txt", "GDL_4_2_1_1.txt", "GDL_4_2_1_2.txt",
>> "GDL_4_2_2.txt", "GDL_4_2_3.txt", "GDL_4_2_4.txt", "GDL_4_3_1.txt",
>> "GDL_4_3_5.txt", "GDL_4_3_6.txt", "GFGH_4_5_3.txt", "GFGH_4_5_4.txt",
>> "GFMH_4_5_1.txt", "GFMH_4_5_2.txt", "GWL_2_2_1.txt", "GWL_2_2_2.txt",
>> "GWL_2_2_3.txt", "GWL_2_3_1.txt", "GWL_2_3_2.txt", "GWL_4_3_3.txt",
>> "PL_2_5_1.txt", "PL_2_5_2.txt", "PL_3_2_1_1.txt", "PL_3_3_1_5.txt",
>> "PL_3_3_2_3.txt", "PL_4_1_1.txt", "PL_4_1_3.txt", "PL_4_6_1.txt",
>> "PL_5_3_6.txt", "PL_6_3_9.txt", "PL_7_1_1.txt", "PL_7_1_3.txt",
>> "PL_7_1_4.txt", "PL_7_1_5.txt", "PL_7_1_6.txt", "PL_7_1_7.txt",
>> "PL_7_1_8.txt", "PUEH_4_0.txt", "PUEH_7_1_2.txt", "UEH_7_2_2.txt"
>> ))
>>
>> 2013/8/21 David Winsemius <dwinsemius at comcast.net>:
>>>
>>> PLEASE do not crosspost to Rhelp and googlegroups. (removed that address.)
>>>
>>> On Aug 20, 2013, at 9:43 AM, Jacqueline Oehri wrote:
>>>
>>>> Dear R users
>>>>
>>>>
>>>> I have a question concerning applying a function to each element of a dataframe:
>>>>
>>>>
>>>> 1)
>>>> --> I have a dataframe like this: "d":
>>>> (columnames: names of Landcovertypes, rownames: coordinates,  nr:
>>>> rowsums, nc:colummnsums)
>>>> (look at the end of the mail for the structure of d, dput(d) )
>>>> here, "d" has 14 rows and 6 colummns:
>>>>
>>>>> d
>>>>      PL_7_1_7.txt PL_7_1_8.txt PUEH_4_0.txt PUEH_7_1_2.txt UEH_7_2_2.txt nr
>>>> 821194            0            0            0              0             0    29
>>>> 821202            0            0            0              0             0     8
>>>> 821206            1            0            0              0             0     2
>>>> 827162            1            0            0              0             0     6
>>>> 827166            0            1            1              1             1    17
>>>> 827178            0            0            0              0             0     0
>>>> 827182            1            0            0              0             0     4
>>>> 827186            0            0            0              0             0    16
>>>> 827190            0            0            0              0             0    16
>>>> 827194            0            0            0              0             0    18
>>>> 827198            0            0            0              0             0    19
>>>> 827206            0            0            0              0             0    19
>>>> 833166            0            0            0              0             0     8
>>>> nc               86          120          905            300           309 18733
>>>>
>>>>
>>>> -->And i want to apply the following function "f" to each element xij
>>>> of the dataframe "d":
>>>> (xij is the element of the dataframe "d" at row nr. "i" and colummn
>>>> nr. "j", x11 is therefore the element in the first row & the first
>>>> collumn, which in case of "d" is equal to "0".)
>>>>
>>>> f = (x[i][j] -((nr[i]*nc[j])/n))^2/((nr[i]*nc[j])/n)
>>>
>>> Looks like you are trying to reinvent the chisq.test function. These are snippets of that code with the continuity correction material removed:
>>>
>>> sr <- rowSums(x)
>>>  sc <- colSums(x)
>>>  E <- outer(sr, sc, "*")/n
>>>  STATISTIC <- sum( ..see below.. )
>>>
>>> You would probably remove the sum and go with
>>>
>>>  fmat <- (abs(x - E) )^2/E
>>>
>>> (I'm not sure why that abs is in the `chisq.test` code.)
>>>
>>>>
>>>>
>>>> so that in the end I will have a new dataframe "e", which contains the
>>>> results of the function "f" as its elements instead of the original
>>>> values! (do you know what I mean?)
>>>> Do you have any hints how to do that?
>>>>
>>>> 2) After this, I wanted to filter out for EACH ROW in "e"  the maximum
>>>> value in the row & assign or link the respective columname of this
>>>> maxiumum value to the respective rowname;
>>>> so that in the end I will know for each rowname,
>>>
>>> Just index the column names by the result of row-which.max:
>>>
>>> colnames(m) [ apply(m, 1, which.max) ]  # (be sure to remove the "nr" column)
>>>
>>> Test to see if I'm missing anything:
>>>
>>> chisq.test        # to see the code
>>>
>>> # posting dput() on the corner of your matrix was a good idea:
>>>
>>> m <- d[!rownames(d)=="nc", !colnames(d)=="nr"]
>>> m <- data.matrix(m); n <- sum(m); sr <- rowSums(m)
>>> sc <- colSums(m)
>>> E <- outer(sr, sc, "*")/n
>>> fmat <- (abs(m - E) )^2/E
>>> colnames(m) [ apply(m, 1, which.max) ]
>>>
>>> [1] "PL_7_1_7.txt" "PL_7_1_7.txt" "PL_7_1_7.txt" "PL_7_1_7.txt"
>>> [5] "PL_7_1_8.txt" "PL_7_1_7.txt" "PL_7_1_7.txt" "PL_7_1_7.txt"
>>> [9] "PL_7_1_7.txt" "PL_7_1_7.txt" "PL_7_1_7.txt" "PL_7_1_7.txt"
>>> [13] "PL_7_1_7.txt"
>>>
>>> The sum of the "predicteds" checks out:
>>>> sum(E, na.rm=TRUE)
>>> [1] 7
>>>
>>>> round(fmat, 3)
>>>       PL_7_1_7.txt PL_7_1_8.txt PUEH_4_0.txt PUEH_7_1_2.txt UEH_7_2_2.txt
>>> 821194          NaN          NaN          NaN            NaN           NaN
>>> 821202          NaN          NaN          NaN            NaN           NaN
>>> 821206        0.762        0.143        0.143          0.143         0.143
>>> 827162        0.762        0.143        0.143          0.143         0.143
>>> 827166        1.714        0.321        0.321          0.321         0.321
>>> 827178          NaN          NaN          NaN            NaN           NaN
>>> 827182        0.762        0.143        0.143          0.143         0.143
>>> 827186          NaN          NaN          NaN            NaN           NaN
>>> 827190          NaN          NaN          NaN            NaN           NaN
>>> 827194          NaN          NaN          NaN            NaN           NaN
>>> 827198          NaN          NaN          NaN            NaN           NaN
>>> 827206          NaN          NaN          NaN            NaN           NaN
>>> 833166          NaN          NaN          NaN            NaN           NaN
>>>
>>> Obviously with a more complete set of data than you offered you would get fewer NaN rows caused by the zero denominators in your data.
>>>
>>> Note that which.max of c(0,0,0,0,0) is 1, so be aware that there is ambiguity when the row count is zero.
>>>
>>> --
>>> David
>>>
>>>> which columname "fits
>>>> best to it" i.e. which columname had the biggest value for this
>>>> respective row.
>>>> For example, in dataframe "d", in the third row called "821206 ", the
>>>> maximum-value lies in the first colummn, which is named "PL_7_1_7.txt
>>>> ". In this example I would link the name "821206 " somehow to the name
>>>> "PL_7_1_7.txt ".
>>>>
>>>> Do you have any suggestions for me, how to do this the best way? or
>>>> where i should look up possible solutions? I m really lost...
>>>
>>>>
>>>> What i tried until now was this:
>>>>
>>>>>
>>>> f.good <- function(x, nr, nc, n) {
>>>> n <-  d[14,6]
>>>> nr <- d[,6]
>>>> nc <- d[14,]
>>>> z1 <- (x-((nr*nc)/n))^2/((nr*nc)/n)
>>>> return(z1)
>>>> }
>>>>
>>>> and then i wanted to use the "apply" function:
>>>>
>>>>>
>>>> apply(d, c(1,2), f.good)
>>>>
>>>> but it never worked at all, and I think Im far away from a solution!
>>>>
>>>> Can somebody help me out and give me a hint what to do? does somebody
>>>> know a clever way to achieve tasks 1) &2) ?
>>>>
>>>> Im very glad about every input!!!!!
>>>>
>>>> Thanks a lot already!!! Have a nice day!
>>>>
>>>> Best wishes,
>>>> Jacqueline
>>>>
>>>>
>>>>> dput(d)
>>>> structure(list(PL_7_1_7.txt = c(0, 0, 1, 1, 0, 0, 1, 0, 0, 0,
>>>> 0, 0, 0, 86), PL_7_1_8.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
>>>> 0, 0, 0, 120), PUEH_4_0.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
>>>> 0, 0, 0, 905), PUEH_7_1_2.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0,
>>>> 0, 0, 0, 0, 300), UEH_7_2_2.txt = c(0, 0, 0, 0, 1, 0, 0, 0, 0,
>>>> 0, 0, 0, 0, 309), nr = c(29, 8, 2, 6, 17, 0, 4, 16, 16, 18, 19,
>>>> 19, 8, 18733)), .Names = c("PL_7_1_7.txt", "PL_7_1_8.txt", "PUEH_4_0.txt",
>>>> "PUEH_7_1_2.txt", "UEH_7_2_2.txt", "nr"), row.names = c("821194",
>>>> "821202", "821206", "827162", "827166", "827178", "827182", "827186",
>>>> "827190", "827194", "827198", "827206", "833166", "nc"), class = "data.frame")
>>>>
>>>> ______________________________________________
>>>> R-help at r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>> David Winsemius
>>> Alameda, CA, USA
>>>
>
> David Winsemius
> Alameda, CA, USA
>



More information about the R-help mailing list