Written by Miguel Romero
Last update: 07/07/21
Classification of nodes with structural properties
This package aims to evaluate whether the structural (topological) properties of a network are useful for predicting node attributes of nodes (i.e., node classification). It uses a combination of multiple machine learning techniques, such as, XGBoost and the SMOTE sampling technique.
Installation
The xgbfnc package can be install using pip, the requirements will be automatically installed:
python3 -m pip install xgbfnc
The source code and examples can be found in the GitHub repository.
Documentation
Documentation of the package can be found here.
Example
The example illustrates how the algorithm can be used to check whether the structural properties of the gene co-expression network improve the performance of the prediction of gene functions for rice (Oryza sativa Japonica). In this example, a gene co-expression network gathered from ATTED II is used.
How to run the example?
The complete source code of the example can be found in the GitHub repository. First, the xgbfnc package need to be imported:
from xgbfnc import xgbfnc from xgbfnc import data
After creating adjacency matrix adj for the network, the structural properties are computed using the module data of the package:
df, strc_cols = data.compute_strc_prop(adj)
This method returns a DataFrame with the structural properties of the network and a list of the names of these properties (i.e., column names). After adding the additional features of the network to the DataFrame, the XGBfnc module is used to instantiate the XGBfnc class:
test = XGBfnc() test.load_data(df, strc_cols, y, term, output_path='output') ans, pred, params = test.structural_test()
The data of the network is loaded using the load_data method. And the structural test is execute using the structural_test method. The test returns a boolean value which indicates whether the structural properties help to improve the prediction performance, the prediction for the model including the structural properties and its best parameters.
To run the example execute the following commands:
cd test/ python3 test_small.py
Metadata
Release files for XGBfnc 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| XGBfnc-0.1.6.tar.gz | 23.6 kB | Details |
Release files / XGBfnc-0.1.6.tar.gz
| Download URL | XGBfnc-0.1.6.tar.gz |
|---|---|
| Size | 23.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
63cff753cd235b0eea6e125db95319a841c466a9cf1886ef17c554e69a96394a
|
|
BLAKE2b-256 checksum How to use checksums |
fbea91938af0ea893ba2b6e9a13bf7e6302941e2ff0ecee68b59ee05586d5acc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/57.1.0 requests-toolbelt/0.8.0 tqdm/4.60.0 CPython/3.8.10
|