bidsbuilder.modules.file_bases.tabular_files

NOT_ALLOWED = 0

DataFrameSchema

we can do ds.add_columns({…}) to add columns where {…} is just the dict of columnname:pa.Column

and we can do ds.set_index([…]) to set index

Type:

assuming ds

class columnView

Bases: MinimalSet

__init__(*args, **kwargs)
add(value)

Add an element.

clear()

This is slow (creates N new iterators!) but effective.

col_names: dict[str, Column]
data: DataFrame
data_schema: DataFrameSchema
discard(value)

Remove an element. Do not raise an exception if absent.

forbidden_instance_names = {'_check_callback_', '_observable_container_init_'}
isdisjoint(other)

Return True if two sets have a null intersection.

pop()

Return the popped value. Raise KeyError if empty.

remove(value)

Remove an element. If not a member, raise a KeyError.

make_column_view(instance, descriptor)
Parameters:

instance (tabularFile)

stringify_all(orig_df, cols)
Parameters:
  • orig_df (DataFrame)

  • cols (dict[str, Column])

class tableView

Bases: object

__init__(data, data_schema, additional_columns_flag, columns)

Method generated by attrs for class tableView.

Parameters:
  • data (DataFrame)

  • data_schema (DataFrameSchema)

  • columns (dict)

Return type:

None

addColumn(columnName, schema=None)
Parameters:
  • columnName (str)

  • schema (Column | dict)

addDataframe(df)

Add dataframe to current data

Parameters:

df (DataFrame)

addRow(pk=None, values=None)

Add a single row, (with values if specified, defaults to NA) pk: primary key value for the new row. If the dataframe uses a RangeIndex, this can be left as None.

i.e. for participants.tsv, where participantID is the primary key, this should be the value of that participantID whose values you want to add

Parameters:
  • pk (Any)

  • values (dict | list)

addValues(pk, values)

Update values for a given primary key.

Parameters:

values (dict)

additional_columns_flag
columns: dict
data: DataFrame
data_schema: DataFrameSchema
delRow(pk)

Remove a row by primary key. No validation is performed.

delValues(pk, columns)

Set specified columns in a row to NA/null. No validation is performed (handled downstream).

Parameters:

columns (list[str])

isRow(pk)
Return type:

bool

Parameters:

pk (Any)

class tabularFile

Bases: DatasetCore

__init__(_level='optional')

Method generated by attrs for class tabularFile.

Parameters:

_level (str)

Return type:

None

addColumn(columnName, schema=None)
Parameters:
  • columnName (str)

  • schema (Column | dict)

addDataframe(df)
Parameters:

df (DataFrame)

addRow(pk=None, values=None)
Parameters:
  • pk (Any)

  • values (dict[Any, Any])

addValues(pk, values)
Parameters:
  • pk (Any)

  • values (dict)

columns: ClassVar[MinimalDict[str, Column]]
classmethod create(*, _level='optional', exists=True, **kwargs)
Return type:

Self

Parameters:
  • _level (str)

  • exists (bool)

data: Union[None, tableView]
delRow(pk)
Parameters:

pk (Any)

delValues(pk, columns)
Parameters:
  • pk (Any)

  • columns (list[str])

delete_self()
exists: ClassVar[bool]
property filename: filenameBase
isRow(pk)
Return type:

bool

Parameters:

pk (Any)

property json_sidecar
class tabularJSONFile

Bases: DatasetCore

__init__(_level='optional')

Method generated by attrs for class DatasetCore.

Parameters:

_level (str)

Return type:

None

classmethod create(*, _level='optional', exists=True, **kwargs)
Return type:

Self

Parameters:
  • _level (str)

  • exists (bool)

delete_self()
exists: ClassVar[bool]
property filename: filenameBase