DelfiniFolder¶
- class pydelfini.collections.DelfiniFolder(collection, in_folder, model, core)[source]¶
Bases:
DelfiniItem,FolderMixinRepresents a folder within a collection.
Note that folders cannot be opened as data streams, so the
open()method will always returnOSError.Attributes
Item column definitions
Datetime item was created
Item internal ID
Datetime item was last modified
Item metadata
Item name
Item parser settings
Item fully qualified path
Item type (
file,folder,dataview, etc.)Collection that contains this item
Folder that contains this item
- Parameters:
collection (DelfiniCollection)
in_folder (FolderMixin)
model (Item)
core (AuthenticatedClient)
- __getitem__(item_path)¶
Retrieve an item in this folder.
Relative paths are supported, such as
folder_a/folder_b/item_c.- Parameters:
item_path (str)
- Return type:
- __iter__()¶
Iterate over all items in this folder.
- Return type:
- collection: DelfiniCollection¶
Collection that contains this item
- property columns: list[ItemColumn] | None¶
Item column definitions
- folder(folder_name)¶
Open the named folder.
- Parameters:
folder_name (str) – the name of the folder to open
- Return type:
- get_table(item_path)¶
Retrieve the tabular contents of an item as a
pd.DataFrame.
- in_folder: FolderMixin¶
Folder that contains this item
- new_empty_file(file_name)¶
Create a new, empty file.
- Parameters:
file_name (str) – the name of the file to create
- Return type:
- new_folder(folder_name)¶
Create a new folder.
- Parameters:
folder_name (str) – the name of the folder to create
- Return type:
- new_link(target, link_name=None)¶
Create a new link pointing to a target.
- Parameters:
- Return type:
- open(mode: Literal['rb'], *, parser: None | str | ItemParser = None, metadata: dict[str, str] | None = None, columns: None | Series | Schema | list[ItemColumn] = None) BinaryIO[source]¶
- open(mode: Literal['r'], *, parser: None | str | ItemParser = None, metadata: dict[str, str] | None = None, columns: None | Series | Schema | list[ItemColumn] = None) TextIO
- open(mode: Literal['wb'], *, parser: None | str | ItemParser = None, metadata: dict[str, str] | None = None, columns: None | Series | Schema | list[ItemColumn] = None) BinaryIO
- open(mode: Literal['w'], *, parser: None | str | ItemParser = None, metadata: dict[str, str] | None = None, columns: None | Series | Schema | list[ItemColumn] = None) TextIO
N/A - folders cannot be opened.
Signature intentionally matches DelfiniItem.open overloads so that type checkers accept calls with the same keyword arguments. At runtime, folders cannot be opened, so we always raise
IsADirectoryError.- Raises:
IsADirectoryError – always
- overwrite_table_data(dataframe, format='csv', **kwargs)¶
Write a
pd.DataFrameto this item, overwriting existing data.- Parameters:
dataframe (DataFrame) – The dataframe to be written.
format (Literal['csv', 'parquet']) – One of the supported formats (
csvorparquet).**kwargs (Any) – Any other arguments to be passed to the Pandas export function. See the documentation for
pd.DataFrame.to_csv()orpd.DataFrame.to_parquet()for valid arguments.
- Return type:
None
- property parser: ItemParser | None¶
Item parser settings
- set_metadata(new_metadata)¶
Update the item’s metadata.
- set_parser(parser, columns=None)¶
Update the item’s parser and optionally columns.
- Parameters:
parser (str | ItemParser) – Parser name (str) or ItemParser object.
columns (None | Series | Schema | list[ItemColumn]) – Optional column schema.
- Return type:
None
- walk()¶
Iterate over all items in this folder, and all subfolders.
- Return type: