Skip to main content

Fork of pandas-plink with NumPy >=2.0 support and modern Python/GPU-stack compatibility

Project description

pandas-plink-ng

[!IMPORTANT] This repository is a maintained fork of pandas-plink by Danilo Horta and contributors.
All credit for the original implementation belongs to the upstream authors.
This fork is maintained by Kynon J M Benjamin for compatibility with modern Python and GPU-based genomics workflows.

Upstream project: https://github.com/limix/pandas-plink
Current fork: https://github.com/KrotosBenjamin/pandas-plink-ng

What’s different?

  • Relaxed NumPy dependency → now supports NumPy ≥ 2.0.
  • No other functional changes to core code or API behavior.

Overview

pandas-plink-ng provides Pythonic access to PLINK binary genotype files (.bed/.bim/.fam)
and related matrices (e.g., GCTA .rel files).
It uses lazy loading to minimize memory usage, reading genotypes only when accessed.

Notable historical changes prior to this fork are tracked in the
upstream CHANGELOG.


Installation

Install from PyPI:

pip install pandas-plink-ng

This fork ensures compatibility with the latest RAPIDS, CuPy, and localQTL GPU environments using NumPy 2.x.

If you prefer the original, CPU-focused package:

pip install pandas-plink

Usage

Usage remains identical to the upstream API:

from pandas_plink import read_plink1_bin

G = read_plink1_bin("chr11.bed", "chr11.bim", "chr11.fam", verbose=False)
print(G)

Output (example):

<xarray.DataArray 'genotype' (sample: 14, variant: 779)>
dask.array<shape=(14, 779), dtype=float64, chunksize=(14, 779)>
Coordinates:
  * sample   (sample) object 'B001' 'B002' ... 'B014'
  * variant  (variant) object '11_316849996' ... '11_345698259'
    a0       (variant) <U1 ...
    a1       (variant) <U1 ...

You can also read realized relationship matrices:

from pandas_plink import read_rel

K = read_rel("plink2.rel.bin")
print(K)

For full API details, refer to the original pandas-plink documentation.


Attribution

Original Author: Danilo Horta Upstream License: MIT Maintainer of this fork: Kynon J M Benjamin


License

This project remains under the MIT License. All original copyright notices are retained.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pandas_plink_ng-2.3.3.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pandas_plink_ng-2.3.3-cp311-cp311-manylinux_2_28_x86_64.whl (35.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page