public Graph < KB , VVB , Projection < KT , VVT , VVB , EV > > projectionBottomFull ( ) { DataSet < Tuple5 < KT , KB , EV , VVT , VVB > > edgesWithVertices = joinEdgeWithVertices ( ) ; DataSet < Edge < KB , Projection < KT , VVT , VVB , EV > > > newEdges = edgesWithVertices . join ( edgesWithVertices ) . where ( 0 ) . equalTo ( 0 ) . with ( new ProjectionBottomFull <> ( ) ) . name ( "Full bottom projection" ) ; return Graph . fromDataSet ( bottomVertices , newEdges , context ) ; }
Convert a bipartite graph into a graph that contains only bottom vertices . An edge between two vertices in the new graph will exist only if the original bipartite graph contains at least one top vertex they both connect to .