Skip to main content

Nano implementation of pandas arrays

Project description

For usage you can simply pip install .

If developing install nanobind then:

cmake -S . -B build
cmake --build build
cd build/src

You can then run the test suite from the build folder with python -m pytest ../../tests

Usage:

>>> import nanopandas as nanopd
>>> arr = nanopd.StringArray(["foo", "bar", "baz", "baz", None])
>>> arr.size
5
>>> arr.nbytes
48
>>> arr.dtype
'large_string[nanoarrow]'
>>> arr.to_pylist()
['foo', 'bar', 'baz', 'baz', None]
>>> arr.unique().to_pylist()
['bar', 'baz', 'foo']

Note that we use utf8proc for string handling:

>>> import nanopandas as nanopd
>>> arr = nanopd.StringArray(["üàéµ"])
>>> arr.upper().to_pylist()
['ÜÀÉΜ']
>>> arr.capitalize().to_pylist()
['Üàéµ']

Developing with sanitizers can work. Try this cmake config from the project root:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DUSE_SANITIZERS=ON
cmake --build build
cd build/src
ASAN_OPTIONS="detect_leaks=0" LD_PRELOAD="$(gcc -print-file-name=libasan.so)" python -m pytest -s ../../tests/

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

nanopandas-0.0.dev1-cp312-cp312-win_amd64.whl (276.0 kB view details)

Uploaded CPython 3.12 Windows x86-64

nanopandas-0.0.dev1-cp312-cp312-musllinux_1_1_x86_64.whl (644.7 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

nanopandas-0.0.dev1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (318.7 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

nanopandas-0.0.dev1-cp312-cp312-macosx_10_14_x86_64.whl (270.5 kB view details)

Uploaded CPython 3.12 macOS 10.14+ x86-64

nanopandas-0.0.dev1-cp311-cp311-win_amd64.whl (276.8 kB view details)

Uploaded CPython 3.11 Windows x86-64

nanopandas-0.0.dev1-cp311-cp311-musllinux_1_1_x86_64.whl (646.2 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

nanopandas-0.0.dev1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (321.3 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

nanopandas-0.0.dev1-cp311-cp311-macosx_10_14_x86_64.whl (270.9 kB view details)

Uploaded CPython 3.11 macOS 10.14+ x86-64

nanopandas-0.0.dev1-cp310-cp310-win_amd64.whl (276.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

nanopandas-0.0.dev1-cp310-cp310-musllinux_1_1_x86_64.whl (646.5 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

nanopandas-0.0.dev1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (321.5 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

nanopandas-0.0.dev1-cp310-cp310-macosx_10_14_x86_64.whl (270.9 kB view details)

Uploaded CPython 3.10 macOS 10.14+ x86-64

nanopandas-0.0.dev1-cp39-cp39-win_amd64.whl (277.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

nanopandas-0.0.dev1-cp39-cp39-musllinux_1_1_x86_64.whl (646.7 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

nanopandas-0.0.dev1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (321.8 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

nanopandas-0.0.dev1-cp39-cp39-macosx_10_14_x86_64.whl (271.1 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

File details

Details for the file nanopandas-0.0.dev1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d52f103b830fec1ac914a84eaa7bbcecc6f85d80c80bb5de2b337ec3050ffd2f
MD5 ef7a0d3c2a3f164d51efc88fc16507c8
BLAKE2b-256 6189fc0f367a954fafad34f6304e15a0625215e47540ccf42472af3deee0354c

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a30f65eac4165228002273a791c0f24e795c6b718ac1c0dfc0b836ee6254a667
MD5 ef0bbb34e89edf56af856b7fc6452898
BLAKE2b-256 e6bfe90e7bddd6029ad8ac868a2e0cfa79611ba7ee89f7a14acf0edcf6d14379

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e93d0f9b05dfa1bb30c2c91cb6b2dfdc832606f2b6025365bc980cde92e4606a
MD5 64daf8f5f6c2e7072d435e67b642cd6e
BLAKE2b-256 93f148e0b6c572c66c643a5346d4788b2d7bb4be60413bd21e81e4cd9c3d603a

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp312-cp312-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp312-cp312-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7ad19c63e94ee6917bb975706ffc0c66478851b47bff71806e777de9ae1a7cb5
MD5 9eeac680b41cb332dfd31811846db23d
BLAKE2b-256 f50e4930f28eeaeadec944557f3b70a08f7ef765a6acd74f0de8f2cd1f7fb004

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 14bd0abb48cfd18d66cdcaee31442e0623d2e3cc653de728a29620612c1a3d8c
MD5 99bb6b766141df96c2096d79834a2ae6
BLAKE2b-256 06df0694d8fe6b30ae2da734a1c4f08350b6126526b23bc48c7a7a7709967f05

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b53bad8dd59b35ff50b42dd05911712dcc850f1e21cc74e28108c450e337d989
MD5 052a9993e2ecf1e72b45486db54c73b2
BLAKE2b-256 536d589d5035978fd0846a61edb0500bb7004f056d33a534ff3a971fa054add2

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1039a0f4ac809465f609994e9a40626f04c522584109ed44d8c64c64204ab32
MD5 e86ec5a5783098003f10bbc19f0b3d0e
BLAKE2b-256 4f3c9dd1abcb2a38bb8be4fe86c781506b0867d2c810881e16b42556789b12e0

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp311-cp311-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp311-cp311-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 706490f3a5854a9996ad91b12e46a1265282971fd944cc307ca4f3f00c1cc4b8
MD5 d9bdc14911a5396df0c0dcfacce46834
BLAKE2b-256 851553e729c4e955654c82f4d6dd23d80d50c71ede011e2a89c9a3e3711bdf0e

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d8580239ab0a2e87278edeccabd71e766ee5d5455838fdc13be03c8fe5138764
MD5 cd9ba983eb6431adcff8a5a3dda6f865
BLAKE2b-256 ba38ee525b39058fed04ff6c2a25e4f1684a21733e5f90dabcf2ab7698b9ab12

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 8241b1d259b2f34dde5a5e854ce0e6cfc4de9eebb48bede9d66c14d112ed608a
MD5 340a74b9fd64743c56a7ac6eb9cb63ad
BLAKE2b-256 b901aad17c3d87875893c421a33a77666954e12d65087f8215bc5f2124972ae9

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 23f0e6a3a98a90fa3017c1be492d970096dacdb6d1b4ee79af45eae14c4c0df6
MD5 242a80e363915f67da8f606011544591
BLAKE2b-256 40b3630407a464226c4820ae1aa24abfa649d014f9414298219e42a6badca60d

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp310-cp310-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp310-cp310-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 71da1ac387097b3859f98332be44ef7c4138571d6ed11414eb6e896aff18c060
MD5 ff2b19aa22e0831ede293e9f3f466d9d
BLAKE2b-256 bf3070e63248f6462e591732f050356b69763fa023f28020a5a295677b18fa37

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c17b68097783203ed29ccae394e6ae3e8f22accc1574e420fd84c959bf9a9915
MD5 55ef0ccb4cdc0bbf5de8cc7bbc4568d5
BLAKE2b-256 3e10c05466f30e1c0562022fa93dc966ffdebf3917f97046a006fe7727fb2241

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 64c37312b52f7874d1ad11b9a4345294bdb3d324c1057f8ea83dcfb46cd87d02
MD5 1a4a3c173422c6b7555fd24299f5a466
BLAKE2b-256 a73790a3e6a75f2853887a37397cb14ae7bf88948700cfae2f6c01ca5ff70111

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3328074cea5061de35eeff0904d2cb2cdb0286f7106cdb2f32311ea4bc4e1319
MD5 6960dd0dc875cd67c84b92caeb3dec93
BLAKE2b-256 ea6ac90c4871f31496bdc4f13c930ead032aefd6403d6d5993147962539b1aa9

See more details on using hashes here.

File details

Details for the file nanopandas-0.0.dev1-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for nanopandas-0.0.dev1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 61d27dc6c06aad2afff8bdc7cc842dca8c9d211e873693a28bdf98a9e05d56c8
MD5 b5701354ba1b8fbcfcf7ab6898bcfbc7
BLAKE2b-256 26e50b6402613868c4d2627928ccb53980eab47fd5eb9ce454c21d6bb8df7bbf

See more details on using hashes here.

Supported by

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