Skip to content
This repository was archived by the owner on Jul 29, 2024. It is now read-only.

Commit bf8bb4f

Browse files
Update connector.py
1 parent 9d7cae4 commit bf8bb4f

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

labelpandas/connector.py

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
import math
77

88
def create_upload_dict(df:pandas.core.frame.DataFrame, lb_client:Client, base_client:baseClient, row_data_col:str,
9-
global_key_col:str="", external_id_col:str="", metadata_index:dict={}, local_files:bool=False, divider:str="///", verbose=False):
9+
global_key_col:str="", external_id_col:str="", metadata_index:dict={}, local_files:bool=False,
10+
divider:str="///", verbose=False):
1011
""" Multithreads over a Pandas DataFrame, calling create_data_rows() on each row to return an upload dictionary
1112
Args:
1213
df : Required (pandas.core.frame.DataFrame) - Pandas DataFrame
@@ -16,9 +17,12 @@ def create_upload_dict(df:pandas.core.frame.DataFrame, lb_client:Client, base_cl
1617
global_key_col : Optional (str) - Column name containing the data row global key - defaults to row data
1718
external_id_col : Optional (str) - Column name containing the data row external ID - defaults to global key
1819
metadata_index : Optional (dict) - Dictionary where {key=column_name : value=metadata_type}
19-
local_files : Optional (bool) - If True, will create urls for local files; if False, uploads `row_data_col` as urls
20-
divider : Optional (str) - String delimiter for all name keys generated
21-
verbose : Optional (bool) - If True, prints information about code execution
20+
metadata_type must be either "enum", "string", "datetime" or "number"
21+
local_files : Optional (bool) - Determines how to handle row_data_col values
22+
If True, treats row_data_col values as file paths uploads the local files to Labelbox
23+
If False, treats row_data_col values as urls (assuming delegated access is set up)
24+
divider : Optional (str) - String delimiter for all name keys generated for parent/child schemas
25+
verbose : Optional (bool) - If True, prints details about code execution; if False, prints minimal information
2226
Returns:
2327
Two values:
2428
- global_key_to_upload_dict - Dictionary where {key=global_key : value=data row dictionary in upload format}
@@ -62,7 +66,7 @@ def create_upload_dict(df:pandas.core.frame.DataFrame, lb_client:Client, base_cl
6266

6367
def create_data_rows(lb_client:Client, base_client:baseClient, row:pandas.core.series.Series,
6468
metadata_name_key_to_schema:dict, metadata_schema_to_name_key:dict, row_data_col:str,
65-
global_key_col:str="", external_id_col:str="", metadata_index:dict={}, local_files=False, divider:str="///"):
69+
global_key_col:str, external_id_col:str, metadata_index:dict, local_files:bool, divider:str):
6670
""" Function to-be-multithreaded to create data row dictionaries from a Pandas DataFrame
6771
Args:
6872
lb_client : Required (labelbox.client.Client) - Labelbox Client object
@@ -71,11 +75,14 @@ def create_data_rows(lb_client:Client, base_client:baseClient, row:pandas.core.s
7175
metadata_name_key_to_schema : Required (dict) - Dictionary where {key=metadata_field_name_key : value=metadata_schema_id}
7276
metadata_schema_to_name_key : Required (dict) - Inverse of metadata_name_key_to_schema
7377
row_data_col : Required (str) - Column containing asset URL or file path
74-
global_key_col : Optional (str) - Column name containing the data row global key
75-
external_id_col : Optional (str) - Column name containing the data row external ID
76-
metadata_index : Optional (dict) - Dictionary where {key=column_name : value=metadata_type}
77-
local_files : Optional (bool) - If True, will create urls for local files; if False, uploads `row_data_col` as urls
78-
divider : Optional (str) - String delimiter for all name keys generated
78+
global_key_col : Required (str) - Column name containing the data row global key
79+
external_id_col : Required (str) - Column name containing the data row external ID
80+
metadata_index : Required (dict) - Dictionary where {key=column_name : value=metadata_type}
81+
metadata_type must be either "enum", "string", "datetime" or "number"
82+
local_files : Required (bool) - Determines how to handle row_data_col values
83+
If True, treats row_data_col values as file paths uploads the local files to Labelbox
84+
If False, treats row_data_col values as urls (assuming delegated access is set up)
85+
divider : Required (str) - String delimiter for all name keys generated for parent/child schemas
7986
Returns:
8087
A dictionary with "error" and "data_row" keys:
8188
- "error" - If there's value in the "error" key, the script will scip it on upload and return the error at the end
@@ -126,7 +133,7 @@ def add_column_function(df, column_name:str, default_value=""):
126133
Args:
127134
df : Required (pandas.core.frame.DataFrame) - Pandas DataFrame
128135
column_name : Required (str) - Column name
129-
default_value : Optional - Value to insert into column
136+
default_value : Optional - Value to insert for every row in the newly created column
130137
Returns:
131138
Your Pandas DataFrame with a new column
132139
"""

0 commit comments

Comments
 (0)