# RphenoGraph clustering

### Description

R implementation of the phenograph algorithm

### Usage

1 | ```
Rphenograph(data, k = 30)
``` |

### Arguments

`data` |
Input data matrix. |

`k` |
Number of nearest neighbours, default is 30. |

### Details

A simple R implementation of the phenograph [PhenoGraph](http://www.cell.com/cell/abstract/S0092-8674(15)00637-6) algorithm, which is a clustering method designed for high-dimensional single-cell data analysis. It works by creating a graph ("network") representing phenotypic similarities between cells by calclating the Jaccard coefficient between nearest-neighbor sets, and then identifying communities using the well known [Louvain method](https://sites.google.com/site/findcommunities/) in this graph.

### Value

a communities object, the operations of this class contains:

`print` |
returns the communities object itself, invisibly. |

`length` |
returns an integer scalar. |

`sizes` |
returns a numeric vector. |

`membership` |
returns a numeric vector, one number for each vertex in the graph that was the input of the community detection. |

`modularity` |
returns a numeric scalar. |

`algorithm` |
returns a character scalar. |

`crossing` |
returns a logical vector. |

`is_hierarchical` |
returns a logical scalar. |

`merges` |
returns a two-column numeric matrix. |

`cut_at` |
returns a numeric vector, the membership vector of the vertices. |

`as.dendrogram` |
returns a dendrogram object. |

`show_trace` |
returns a character vector. |

`code_len` |
returns a numeric scalar for communities found with the InfoMAP method and NULL for other methods. |

`plot` |
for communities objects returns NULL, invisibly. |

### Author(s)

Chen Hao

### References

Jacob H. Levine and et.al. Data-Driven Phenotypic Dissection of AML Reveals Progenitor-like Cells that Correlate with Prognosis. Cell, 2015.

### Examples

1 2 3 |