Re: [GRASS-user] Problem with v.class.mIR
[Guisseppe sent me the files]. The issue is your training file. As the manual page states: "The user provides a set of objects (or segments) to be classified, including all feature variables describing these object, and a set of objects to be used as training data, including the same feature variables as those describing the unknown objects, plus one additional column indicating the class each training falls into. The training data can, but does not have to be, a subset of the set of objects to be classified." IOW, the training data file has to contain the same feature variables as the data you wish to classify. Your data is: $ head -1 segmentation_map.csv cat,area,perimeter,compact_circle,fd $ head -1 training_map.csv cat,id,cate i.e. you training data only includes the id and the class, but not the variables describing the objects. The reason this is organised in this manner is that you might have training data which is independent of the data you wish to classify, i.e. the ids of the training data might not be linked to the ids in the object data. Another issue is that in your command, you do not provide a good name for the column that contains the actual class label in the training data: v.class.mlR segments_map=gbbb@PERMANENT training_map=tainning@PERMANENT train_class_column=fd [...] v.class.mlR segments_map=gbbb training_map=tainning train_class_column=class [...] Your training data does not contain a column 'fd' nor a column 'class'. I suppose that in your data it is the column 'cate'. Moritz On 4/12/19 10:38, Moritz Lennert wrote: Sorry for ignoring you up to now, just to much on the platter right now. Would it be feasible for you to make the data available, privately if necessary ? The easiest (and lightest) would be just the csv output of v.db.select on the training_map and the segments_maps. Moritz On 2/12/19 16:31, Giuseppe Cillis wrote: No one can help me? GC Il giorno mer 20 nov 2019 alle ore 14:06 Giuseppe Cillis mailto:giucil...@gmail.com>> ha scritto: Thanks for the answer._ _ _ _ _v.class.mlR segments_map=gbbb@PERMANENT training_map=tainning@PERMANENT train_class_column=fd output_class_column=vote output_prob_column=prob folds=5 partitions=10 tunelength=10 weighting_metric=accuracy_ _and the same error with this command: _ _v.class.mlR segments_map=gbbb training_map=tainning train_class_column=class weighting_mode=smv,swv,qbwwv -i_ The vector used was elaborated with i.segment.stats module. An extract is here: catareaperimeter fd 1 958 208 1.555034 2 24 22 1.945217 3 160 80 1.726846 4 2036242 1.440904 5 25 26 2.024344 6 222 96 1.68966 7 843510121.530879 /cat /type Integer (9-0) /fd /type double/real (25-9) For the training area (t/ainning/), I use a simple vector with numerical categories (named/"cate"/) and there are 11 features (just for a trying). The type is in integer64 (10) Il giorno mer 20 nov 2019 alle ore 12:18 Moritz Lennert mailto:mlenn...@club.worldonline.be>> ha scritto: On 20/11/19 11:55, Giuseppe Cillis wrote: > Hi, > I'm trying to use this module for classification of an old aerial photos. > After a segmentation (i.segment and i.segment.stats), I would to use a > machine learning approach for the real classification. > I tried with v.class.mIR which use also R. > But there is an error and I don't know how to solve it: > */Durante l'avvio - Warning messages: > 1: Setting LC_CTYPE=it_IT.cp1252 failed > 2: Setting LC_COLLATE=it_IT.cp1252 failed > 3: Setting LC_TIME=it_IT.cp1252 failed > 4: Setting LC_MONETARY=it_IT.cp1252 failed > Carico il pacchetto richiesto: caret > Carico il pacchetto richiesto: lattice > Carico il pacchetto richiesto: ggplot2 > Error in `$<-.data.frame`(`*tmp*`, fd, value = integer(0)) : > replacement has 0 rows, data has 11 > Calls: $<- -> $<-.data.frame/* > */ > /* > A part is in italian, I'm sorry. > I'm a beginner in grass and R. R messages are often not very explicit, unfortunately. Could you provide us with the exact command line you use (If you use the GUI, you can get the command line by clicking the 'Copy' button once you've filled out all the parameters, or in the history of the 'Console' in the Layer manager.) and an extract of the attribute data you feed into the module ? Moritz ___ grass-user mailing list grass-user@lists.osgeo.org
Re: [GRASS-user] Problem with v.class.mIR
Sorry for ignoring you up to now, just to much on the platter right now. Would it be feasible for you to make the data available, privately if necessary ? The easiest (and lightest) would be just the csv output of v.db.select on the training_map and the segments_maps. Moritz On 2/12/19 16:31, Giuseppe Cillis wrote: No one can help me? GC Il giorno mer 20 nov 2019 alle ore 14:06 Giuseppe Cillis mailto:giucil...@gmail.com>> ha scritto: Thanks for the answer._ _ _ _ _v.class.mlR segments_map=gbbb@PERMANENT training_map=tainning@PERMANENT train_class_column=fd output_class_column=vote output_prob_column=prob folds=5 partitions=10 tunelength=10 weighting_metric=accuracy_ _and the same error with this command: _ _v.class.mlR segments_map=gbbb training_map=tainning train_class_column=class weighting_mode=smv,swv,qbwwv -i_ The vector used was elaborated with i.segment.stats module. An extract is here: cat areaperimeter fd 1 958 208 1.555034 2 24 22 1.945217 3 160 80 1.726846 4 2036242 1.440904 5 25 26 2.024344 6 222 96 1.68966 7 843510121.530879 /cat /type Integer (9-0) /fd /type double/real (25-9) For the training area (t/ainning/), I use a simple vector with numerical categories (named/"cate"/) and there are 11 features (just for a trying). The type is in integer64 (10) Il giorno mer 20 nov 2019 alle ore 12:18 Moritz Lennert mailto:mlenn...@club.worldonline.be>> ha scritto: On 20/11/19 11:55, Giuseppe Cillis wrote: > Hi, > I'm trying to use this module for classification of an old aerial photos. > After a segmentation (i.segment and i.segment.stats), I would to use a > machine learning approach for the real classification. > I tried with v.class.mIR which use also R. > But there is an error and I don't know how to solve it: > */Durante l'avvio - Warning messages: > 1: Setting LC_CTYPE=it_IT.cp1252 failed > 2: Setting LC_COLLATE=it_IT.cp1252 failed > 3: Setting LC_TIME=it_IT.cp1252 failed > 4: Setting LC_MONETARY=it_IT.cp1252 failed > Carico il pacchetto richiesto: caret > Carico il pacchetto richiesto: lattice > Carico il pacchetto richiesto: ggplot2 > Error in `$<-.data.frame`(`*tmp*`, fd, value = integer(0)) : > replacement has 0 rows, data has 11 > Calls: $<- -> $<-.data.frame/* > */ > /* > A part is in italian, I'm sorry. > I'm a beginner in grass and R. R messages are often not very explicit, unfortunately. Could you provide us with the exact command line you use (If you use the GUI, you can get the command line by clicking the 'Copy' button once you've filled out all the parameters, or in the history of the 'Console' in the Layer manager.) and an extract of the attribute data you feed into the module ? Moritz ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Problem with v.class.mIR
No one can help me? GC Il giorno mer 20 nov 2019 alle ore 14:06 Giuseppe Cillis < giucil...@gmail.com> ha scritto: > Thanks for the answer. > > *v.class.mlR segments_map=gbbb@PERMANENT training_map=tainning@PERMANENT > train_class_column=fd output_class_column=vote output_prob_column=prob > folds=5 partitions=10 tunelength=10 weighting_metric=accuracy* > > > *and the same error with this command: * > *v.class.mlR segments_map=gbbb training_map=tainning > train_class_column=class weighting_mode=smv,swv,qbwwv -i* > > The vector used was elaborated with i.segment.stats module. > An extract is here: > cat area perimeter fd > 1 958 208 1.555034 > 2 24 22 1.945217 > 3 160 80 1.726846 > 4 2036 242 1.440904 > 5 25 26 2.024344 > 6 222 96 1.68966 > 7 8435 1012 1.530879 > > *cat *type Integer (9-0) > *fd *type double/real (25-9) > For the training area (t*ainning*), I use a simple vector with numerical > categories (named* "cate"*) and there are 11 features (just for a > trying). The type is in integer64 (10) > > Il giorno mer 20 nov 2019 alle ore 12:18 Moritz Lennert < > mlenn...@club.worldonline.be> ha scritto: > >> On 20/11/19 11:55, Giuseppe Cillis wrote: >> > Hi, >> > I'm trying to use this module for classification of an old aerial >> photos. >> > After a segmentation (i.segment and i.segment.stats), I would to use a >> > machine learning approach for the real classification. >> > I tried with v.class.mIR which use also R. >> > But there is an error and I don't know how to solve it: >> > */Durante l'avvio - Warning messages: >> > 1: Setting LC_CTYPE=it_IT.cp1252 failed >> > 2: Setting LC_COLLATE=it_IT.cp1252 failed >> > 3: Setting LC_TIME=it_IT.cp1252 failed >> > 4: Setting LC_MONETARY=it_IT.cp1252 failed >> > Carico il pacchetto richiesto: caret >> > Carico il pacchetto richiesto: lattice >> > Carico il pacchetto richiesto: ggplot2 >> > Error in `$<-.data.frame`(`*tmp*`, fd, value = integer(0)) : >> >replacement has 0 rows, data has 11 >> > Calls: $<- -> $<-.data.frame/* >> > */ >> > /* >> > A part is in italian, I'm sorry. >> > I'm a beginner in grass and R. >> >> R messages are often not very explicit, unfortunately. >> >> Could you provide us with the exact command line you use (If you use the >> GUI, you can get the command line by clicking the 'Copy' button once >> you've filled out all the parameters, or in the history of the 'Console' >> in the Layer manager.) and an extract of the attribute data you feed >> into the module ? >> >> Moritz >> >> ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Problem with v.class.mIR
Thanks for the answer. *v.class.mlR segments_map=gbbb@PERMANENT training_map=tainning@PERMANENT train_class_column=fd output_class_column=vote output_prob_column=prob folds=5 partitions=10 tunelength=10 weighting_metric=accuracy* *and the same error with this command: * *v.class.mlR segments_map=gbbb training_map=tainning train_class_column=class weighting_mode=smv,swv,qbwwv -i* The vector used was elaborated with i.segment.stats module. An extract is here: cat area perimeter fd 1 958 208 1.555034 2 24 22 1.945217 3 160 80 1.726846 4 2036 242 1.440904 5 25 26 2.024344 6 222 96 1.68966 7 8435 1012 1.530879 *cat *type Integer (9-0) *fd *type double/real (25-9) For the training area (t*ainning*), I use a simple vector with numerical categories (named* "cate"*) and there are 11 features (just for a trying). The type is in integer64 (10) Il giorno mer 20 nov 2019 alle ore 12:18 Moritz Lennert < mlenn...@club.worldonline.be> ha scritto: > On 20/11/19 11:55, Giuseppe Cillis wrote: > > Hi, > > I'm trying to use this module for classification of an old aerial photos. > > After a segmentation (i.segment and i.segment.stats), I would to use a > > machine learning approach for the real classification. > > I tried with v.class.mIR which use also R. > > But there is an error and I don't know how to solve it: > > */Durante l'avvio - Warning messages: > > 1: Setting LC_CTYPE=it_IT.cp1252 failed > > 2: Setting LC_COLLATE=it_IT.cp1252 failed > > 3: Setting LC_TIME=it_IT.cp1252 failed > > 4: Setting LC_MONETARY=it_IT.cp1252 failed > > Carico il pacchetto richiesto: caret > > Carico il pacchetto richiesto: lattice > > Carico il pacchetto richiesto: ggplot2 > > Error in `$<-.data.frame`(`*tmp*`, fd, value = integer(0)) : > >replacement has 0 rows, data has 11 > > Calls: $<- -> $<-.data.frame/* > > */ > > /* > > A part is in italian, I'm sorry. > > I'm a beginner in grass and R. > > R messages are often not very explicit, unfortunately. > > Could you provide us with the exact command line you use (If you use the > GUI, you can get the command line by clicking the 'Copy' button once > you've filled out all the parameters, or in the history of the 'Console' > in the Layer manager.) and an extract of the attribute data you feed > into the module ? > > Moritz > > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Problem with v.class.mIR
On 20/11/19 11:55, Giuseppe Cillis wrote: Hi, I'm trying to use this module for classification of an old aerial photos. After a segmentation (i.segment and i.segment.stats), I would to use a machine learning approach for the real classification. I tried with v.class.mIR which use also R. But there is an error and I don't know how to solve it: */Durante l'avvio - Warning messages: 1: Setting LC_CTYPE=it_IT.cp1252 failed 2: Setting LC_COLLATE=it_IT.cp1252 failed 3: Setting LC_TIME=it_IT.cp1252 failed 4: Setting LC_MONETARY=it_IT.cp1252 failed Carico il pacchetto richiesto: caret Carico il pacchetto richiesto: lattice Carico il pacchetto richiesto: ggplot2 Error in `$<-.data.frame`(`*tmp*`, fd, value = integer(0)) : replacement has 0 rows, data has 11 Calls: $<- -> $<-.data.frame/* */ /* A part is in italian, I'm sorry. I'm a beginner in grass and R. R messages are often not very explicit, unfortunately. Could you provide us with the exact command line you use (If you use the GUI, you can get the command line by clicking the 'Copy' button once you've filled out all the parameters, or in the history of the 'Console' in the Layer manager.) and an extract of the attribute data you feed into the module ? Moritz ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
[GRASS-user] Problem with v.class.mIR
Hi, I'm trying to use this module for classification of an old aerial photos. After a segmentation (i.segment and i.segment.stats), I would to use a machine learning approach for the real classification. I tried with v.class.mIR which use also R. But there is an error and I don't know how to solve it: *Durante l'avvio - Warning messages:1: Setting LC_CTYPE=it_IT.cp1252 failed 2: Setting LC_COLLATE=it_IT.cp1252 failed 3: Setting LC_TIME=it_IT.cp1252 failed 4: Setting LC_MONETARY=it_IT.cp1252 failed Carico il pacchetto richiesto: caretCarico il pacchetto richiesto: latticeCarico il pacchetto richiesto: ggplot2Error in `$<-.data.frame`(`*tmp*`, fd, value = integer(0)) : replacement has 0 rows, data has 11Calls: $<- -> $<-.data.frame* A part is in italian, I'm sorry. I'm a beginner in grass and R. Thanks in advance, Giuseppe ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user