55 < meta name ="color-scheme " content ="light dark "> < link rel ="index " title ="Index " href ="../../genindex.html "> < link rel ="search " title ="Search " href ="../../search.html ">
66
77 <!-- Generated with Sphinx 8.2.3 and Furo 2025.12.19 -->
8- < title > biocframe.frame - BiocFrame 0.7.0 documentation</ title >
8+ < title > biocframe.frame - BiocFrame 0.7.1 documentation</ title >
99 < link rel ="stylesheet " type ="text/css " href ="../../_static/pygments.css?v=03e43079 " />
1010 < link rel ="stylesheet " type ="text/css " href ="../../_static/styles/furo.css?v=7bdb33bb " />
1111 < link rel ="stylesheet " type ="text/css " href ="../../_static/mystnb.8ecb98da25f57f5357bf6f572d296f466b2cfe2517ffebfabe82451661e28f02.css " />
161161 </ label >
162162 </ div >
163163 < div class ="header-center ">
164- < a href ="../../index.html "> < div class ="brand "> BiocFrame 0.7.0 documentation</ div > </ a >
164+ < a href ="../../index.html "> < div class ="brand "> BiocFrame 0.7.1 documentation</ div > </ a >
165165 </ div >
166166 < div class ="header-right ">
167167 < div class ="theme-toggle-container theme-toggle-header ">
182182
183183 < div class ="sidebar-sticky "> < a class ="sidebar-brand " href ="../../index.html ">
184184
185- < span class ="sidebar-brand-text "> BiocFrame 0.7.0 documentation</ span >
185+ < span class ="sidebar-brand-text "> BiocFrame 0.7.1 documentation</ span >
186186
187187</ a > < form class ="sidebar-search-container " method ="get " action ="../../search.html " role ="search ">
188188 < input class ="sidebar-search " placeholder ="Search " name ="q " aria-label ="Search ">
@@ -367,7 +367,7 @@ <h1>Source code for biocframe.frame</h1><div class="highlight"><pre>
367367
368368< div class ="viewcode-block " id ="BiocFrame ">
369369< a class ="viewcode-back " href ="../../api/biocframe.html#biocframe.frame.BiocFrame "> [docs]</ a >
370- < span class ="k "> class</ span > < span class ="w "> </ span > < span class ="nc "> BiocFrame</ span > < span class ="p "> :</ span >
370+ < span class ="k "> class</ span > < span class ="w "> </ span > < span class ="nc "> BiocFrame</ span > < span class ="p "> ( </ span > < span class =" n " > ut </ span > < span class =" o " > . </ span > < span class =" n " > BiocObject </ span > < span class =" p " > ) :</ span >
371371< span class ="w "> </ span > < span class ="sd "> """`BiocFrame` is an alternative to :class:`~pandas.DataFrame`, with support for nested and flexible column types.</ span >
372372< span class ="sd "> Inspired by the ``DFrame`` class from Bioconductor's **S4Vectors** package. Any object may be used as a column,</ span >
373373< span class ="sd "> provided it has:</ span >
@@ -433,6 +433,12 @@ <h1>Source code for biocframe.frame</h1><div class="highlight"><pre>
433433< span class ="sd "> _validate:</ span >
434434< span class ="sd "> Internal use only.</ span >
435435< span class ="sd "> """</ span >
436+
437+ < span class ="nb "> super</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="fm "> __init__</ span > < span class ="p "> (</ span >
438+ < span class ="n "> metadata</ span > < span class ="o "> =</ span > < span class ="n "> metadata</ span > < span class ="p "> ,</ span >
439+ < span class ="n "> _validate</ span > < span class ="o "> =</ span > < span class ="n "> _validate</ span > < span class ="p "> ,</ span >
440+ < span class ="p "> )</ span >
441+
436442 < span class ="k "> if</ span > < span class ="n "> data</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
437443 < span class ="n "> data</ span > < span class ="o "> =</ span > < span class ="p "> {}</ span >
438444
@@ -441,7 +447,7 @@ <h1>Source code for biocframe.frame</h1><div class="highlight"><pre>
441447 < span class ="c1 "> # making sure all column values are lists</ span >
442448 < span class ="k "> for</ span > < span class ="n "> k</ span > < span class ="p "> ,</ span > < span class ="n "> v</ span > < span class ="ow "> in</ span > < span class ="n "> data</ span > < span class ="o "> .</ span > < span class ="n "> items</ span > < span class ="p "> ():</ span >
443449 < span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> v</ span > < span class ="p "> ,</ span > < span class ="nb "> list</ span > < span class ="p "> ):</ span >
444- < span class ="c1 "> # if its a scalar, make a list else corce to list</ span >
450+ < span class ="c1 "> # if its a scalar, make a list else coerce to list</ span >
445451 < span class ="n "> data</ span > < span class ="p "> [</ span > < span class ="n "> k</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="nb "> list</ span > < span class ="p "> (</ span > < span class ="n "> v</ span > < span class ="p "> )</ span > < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> v</ span > < span class ="p "> ,</ span > < span class ="n "> abc</ span > < span class ="o "> .</ span > < span class ="n "> Sequence</ span > < span class ="p "> )</ span > < span class ="k "> else</ span > < span class ="p "> [</ span > < span class ="n "> v</ span > < span class ="p "> ]</ span >
446452 < span class ="k "> elif</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> data</ span > < span class ="p "> ,</ span > < span class ="n "> Sequence</ span > < span class ="p "> )</ span > < span class ="ow "> and</ span > < span class ="ow "> not</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> data</ span > < span class ="p "> ,</ span > < span class ="p "> (</ span > < span class ="nb "> str</ span > < span class ="p "> ,</ span > < span class ="nb "> dict</ span > < span class ="p "> )):</ span >
447453 < span class ="k "> if</ span > < span class ="n "> column_names</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
@@ -471,20 +477,13 @@ <h1>Source code for biocframe.frame</h1><div class="highlight"><pre>
471477 < span class ="k "> else</ span > < span class ="p "> :</ span >
472478 < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _column_names</ span > < span class ="o "> =</ span > < span class ="n "> column_names</ span > < span class ="k "> if</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> column_names</ span > < span class ="p "> ,</ span > < span class ="n "> ut</ span > < span class ="o "> .</ span > < span class ="n "> Names</ span > < span class ="p "> )</ span > < span class ="k "> else</ span > < span class ="n "> ut</ span > < span class ="o "> .</ span > < span class ="n "> Names</ span > < span class ="p "> (</ span > < span class ="n "> column_names</ span > < span class ="p "> )</ span >
473479
474- < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _metadata</ span > < span class ="o "> =</ span > < span class ="p "> {}</ span > < span class ="k "> if</ span > < span class ="n "> metadata</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="k "> else</ span > < span class ="n "> metadata</ span >
475480 < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _column_data</ span > < span class ="o "> =</ span > < span class ="n "> column_data</ span >
476481
477482 < span class ="k "> if</ span > < span class ="n "> _validate</ span > < span class ="p "> :</ span >
478483 < span class ="n "> _validate_rows</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _number_of_rows</ span > < span class ="p "> ,</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _data</ span > < span class ="p "> ,</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _row_names</ span > < span class ="p "> )</ span >
479484 < span class ="n "> _validate_columns</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _column_names</ span > < span class ="p "> ,</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _data</ span > < span class ="p "> ,</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _column_data</ span > < span class ="p "> )</ span > </ div >
480485
481486
482- < span class ="k "> def</ span > < span class ="w "> </ span > < span class ="nf "> _define_output</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ,</ span > < span class ="n "> in_place</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> BiocFrame</ span > < span class ="p "> :</ span >
483- < span class ="k "> if</ span > < span class ="n "> in_place</ span > < span class ="ow "> is</ span > < span class ="kc "> True</ span > < span class ="p "> :</ span >
484- < span class ="k "> return</ span > < span class ="bp "> self</ span >
485- < span class ="k "> else</ span > < span class ="p "> :</ span >
486- < span class ="k "> return</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> __copy__</ span > < span class ="p "> ()</ span >
487-
488487< div class ="viewcode-block " id ="BiocFrame.__eq__ ">
489488< a class ="viewcode-back " href ="../../api/biocframe.html#biocframe.frame.BiocFrame.__eq__ "> [docs]</ a >
490489 < span class ="k "> def</ span > < span class ="w "> </ span > < span class ="fm "> __eq__</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ,</ span > < span class ="n "> other</ span > < span class ="p "> :</ span > < span class ="n "> Any</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="nb "> bool</ span > < span class ="p "> :</ span >
@@ -982,57 +981,6 @@ <h1>Source code for biocframe.frame</h1><div class="highlight"><pre>
982981 < span class ="p "> )</ span >
983982 < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> set_column_data</ span > < span class ="p "> (</ span > < span class ="n "> column_data</ span > < span class ="p "> ,</ span > < span class ="n "> in_place</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> )</ span >
984983
985- < div class ="viewcode-block " id ="BiocFrame.get_metadata ">
986- < a class ="viewcode-back " href ="../../api/biocframe.html#biocframe.frame.BiocFrame.get_metadata "> [docs]</ a >
987- < span class ="k "> def</ span > < span class ="w "> </ span > < span class ="nf "> get_metadata</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="nb "> dict</ span > < span class ="p "> :</ span >
988- < span class ="w "> </ span > < span class ="sd "> """Get the metadata.</ span >
989-
990- < span class ="sd "> Returns:</ span >
991- < span class ="sd "> Dictionary of metadata for this object.</ span >
992- < span class ="sd "> """</ span >
993- < span class ="k "> return</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _metadata</ span > </ div >
994-
995-
996- < div class ="viewcode-block " id ="BiocFrame.set_metadata ">
997- < a class ="viewcode-back " href ="../../api/biocframe.html#biocframe.frame.BiocFrame.set_metadata "> [docs]</ a >
998- < span class ="k "> def</ span > < span class ="w "> </ span > < span class ="nf "> set_metadata</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ,</ span > < span class ="n "> metadata</ span > < span class ="p "> :</ span > < span class ="n "> Dict</ span > < span class ="p "> [</ span > < span class ="nb "> str</ span > < span class ="p "> ,</ span > < span class ="n "> Any</ span > < span class ="p "> ],</ span > < span class ="n "> in_place</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> BiocFrame</ span > < span class ="p "> :</ span >
999- < span class ="w "> </ span > < span class ="sd "> """Set new metadata.</ span >
1000-
1001- < span class ="sd "> Args:</ span >
1002- < span class ="sd "> metadata:</ span >
1003- < span class ="sd "> New metadata for this object.</ span >
1004-
1005- < span class ="sd "> in_place:</ span >
1006- < span class ="sd "> Whether to modify the ``BiocFrame`` object in place.</ span >
1007-
1008- < span class ="sd "> Returns:</ span >
1009- < span class ="sd "> A modified ``BiocFrame`` object, either as a copy of the original</ span >
1010- < span class ="sd "> or as a reference to the (in-place-modified) original.</ span >
1011- < span class ="sd "> """</ span >
1012- < span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="nb "> isinstance</ span > < span class ="p "> (</ span > < span class ="n "> metadata</ span > < span class ="p "> ,</ span > < span class ="nb "> dict</ span > < span class ="p "> ):</ span >
1013- < span class ="k "> raise</ span > < span class ="ne "> TypeError</ span > < span class ="p "> (</ span > < span class ="sa "> f</ span > < span class ="s2 "> "`metadata` must be a dictionary, provided </ span > < span class ="si "> {</ span > < span class ="nb "> type</ span > < span class ="p "> (</ span > < span class ="n "> metadata</ span > < span class ="p "> )</ span > < span class ="si "> }</ span > < span class ="s2 "> ."</ span > < span class ="p "> )</ span >
1014- < span class ="n "> output</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _define_output</ span > < span class ="p "> (</ span > < span class ="n "> in_place</ span > < span class ="p "> )</ span >
1015- < span class ="n "> output</ span > < span class ="o "> .</ span > < span class ="n "> _metadata</ span > < span class ="o "> =</ span > < span class ="n "> metadata</ span >
1016- < span class ="k "> return</ span > < span class ="n "> output</ span > </ div >
1017-
1018-
1019- < span class ="nd "> @property</ span >
1020- < span class ="k "> def</ span > < span class ="w "> </ span > < span class ="nf "> metadata</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> Dict</ span > < span class ="p "> [</ span > < span class ="nb "> str</ span > < span class ="p "> ,</ span > < span class ="n "> Any</ span > < span class ="p "> ]:</ span >
1021- < span class ="w "> </ span > < span class ="sd "> """Alias for :py:attr:`~get_metadata`."""</ span >
1022- < span class ="k "> return</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> get_metadata</ span > < span class ="p "> ()</ span >
1023-
1024- < span class ="nd "> @metadata</ span > < span class ="o "> .</ span > < span class ="n "> setter</ span >
1025- < span class ="k "> def</ span > < span class ="w "> </ span > < span class ="nf "> metadata</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ,</ span > < span class ="n "> metadata</ span > < span class ="p "> :</ span > < span class ="n "> Dict</ span > < span class ="p "> [</ span > < span class ="nb "> str</ span > < span class ="p "> ,</ span > < span class ="n "> Any</ span > < span class ="p "> ])</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
1026- < span class ="w "> </ span > < span class ="sd "> """Alias for :py:attr:`~set_metadata` with ``in_place = True``.</ span >
1027-
1028- < span class ="sd "> As this mutates the original object, a warning is raised.</ span >
1029- < span class ="sd "> """</ span >
1030- < span class ="n "> warn</ span > < span class ="p "> (</ span >
1031- < span class ="s2 "> "Setting property 'metadata' is an in-place operation, use 'set_metadata' instead"</ span > < span class ="p "> ,</ span >
1032- < span class ="ne "> UserWarning</ span > < span class ="p "> ,</ span >
1033- < span class ="p "> )</ span >
1034- < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> set_metadata</ span > < span class ="p "> (</ span > < span class ="n "> metadata</ span > < span class ="p "> ,</ span > < span class ="n "> in_place</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> )</ span >
1035-
1036984 < span class ="c1 "> ################################</ span >
1037985 < span class ="c1 "> ######>> Single getters <<######</ span >
1038986 < span class ="c1 "> ################################</ span >
@@ -2625,7 +2573,7 @@ <h1>Source code for biocframe.frame</h1><div class="highlight"><pre>
26252573
26262574 </ aside >
26272575 </ div >
2628- </ div > < script src ="../../_static/documentation_options.js?v=fe7df9b0 "> </ script >
2576+ </ div > < script src ="../../_static/documentation_options.js?v=5a057da9 "> </ script >
26292577 < script src ="../../_static/doctools.js?v=9bcbadda "> </ script >
26302578 < script src ="../../_static/sphinx_highlight.js?v=dc90522c "> </ script >
26312579 < script src ="../../_static/scripts/furo.js?v=46bd48cc "> </ script >
0 commit comments