Skip to main content

 

Hi, I have a table with many points, with an ID and two attributs, like this :

I need to “dissolve” the points and get just one point by ID and in attributes get “Yes” if at least one of the original points had “Yes” as value, like this:

 

Is that possible with some transformer?

 

Thanks

I am not sure what you expect for geometry result. But one way to do this:

  • NullAttributeMapper to remove all Non values.
    • Replace the value Non with Missing.
  • Aggregator to merge all records where ID is the same.

    • Group by ID.

    • Accumulation Mode: Merge Incoming Attributes.

This will give you the resulting table from your question. The geometry will be a multigeometry with all input points.


You can use an Aggregator + AttributeCreator for this. In the Aggregator, set the Group Processing to ‘ID’, and Attributes to Concatenate set to Attribute1 and Attribute 2. In the AttributeCreator, use a conditional value. If Attribute1 contains Yes, make it Yes. Otherwise, it’s Non.

If needed, you can use a Deaggregator after the AttributeCreator for the original geometry.

 


 

You can use an Aggregator + AttributeCreator for this. In the Aggregator, set the Group Processing to ‘ID’, and Attributes to Concatenate set to Attribute1 and Attribute 2. In the AttributeCreator, use a conditional value. If Attribute1 contains Yes, make it Yes. Otherwise, it’s Non.

If needed, you can use a Deaggregator after the AttributeCreator for the original geometry.

 

 

Hi, thanks for answer. Its work fine, but i get warning with the geometry:

“OGCGEOPACKAGE writer: Feature type has geometry type 'geopackage_multipoint' and cannot accept the current feature with a geometry of type 'geopackage_geometrycollection'.  Skipping feature”

 

With deaggregator after the AttributeCreator I get the original quantity of elements as before the aggregate. For ex. if i had 600 entities, with aggregate I get 300, and with deaggregator i got 600 again.

 


 

You can use an Aggregator + AttributeCreator for this. In the Aggregator, set the Group Processing to ‘ID’, and Attributes to Concatenate set to Attribute1 and Attribute 2. In the AttributeCreator, use a conditional value. If Attribute1 contains Yes, make it Yes. Otherwise, it’s Non.

If needed, you can use a Deaggregator after the AttributeCreator for the original geometry.

 

 

Hi, thanks for answer. Its work fine, but i get warning with the geometry:

“OGCGEOPACKAGE writer: Feature type has geometry type 'geopackage_multipoint' and cannot accept the current feature with a geometry of type 'geopackage_geometrycollection'.  Skipping feature”

 

With deaggregator after the AttributeCreator I get the original quantity of elements as before the aggregate. For ex. if i had 600 entities, with aggregate I get 300, and with deaggregator i got 600 again.

 

Yes, feature count changing between aggregation/deaggregation is expected. So you are saying even after using the Deaggregator, you are still getting that geopackage error?


Reply