project - lib per R (obsoleto)
Se è necessario interagire con i progetti di Watson Studio e project asset da un notebook, è possibile utilizzare la libreria project-lib per R. La biblioteca è come un'interfaccia programmaticale ad un progetto.
Utilizzando la libreria project-lib per R, è possibile accedere ai metadati del progetto e agli asset, inclusi i file e le connessioni. La libreria contiene anche funzioni che semplificano i file di recupero associati al progetto.
La libreria project-lib per R è obsoleta ed è stata sostituita dalla libreria ibm-watson-studio-lib per R. Anche se è ancora possibile utilizzare la libreria project-lib , è necessario iniziare ad utilizzare la libreria ibm-watson-studio-lib nei notebook. Vedi ibm - watson - studio - lib per R.
La libreria project-lib viene rimossa dal runtime 25.1. Nei runtime più vecchi, project-lib rimane disponibile.
- Le funzioni project-lib non codificano o decodificano i dati durante il salvataggio o l'acquisizione di dati da un file.
- Le funzioni project-lib non possono essere utilizzate per accedere agli asset della cartella connessi (file su un percorso in Cloud Object Storage).
Le funzioni project-lib
L'oggetto di progetto instanziato che viene creato dopo aver importato la libreria project-lib espone una serie di funzioni raggruppate nel seguente modo:
- Caricamento informazioni progetto
- File di recupero
- Salva dati
- Dati di lettura da una connessione
- Caricamento dei dati connessi
Informazioni sul progetto di recupero
È possibile utilizzare le seguenti funzioni per recuperare programmaticamente le informazioni relative al progetto.
get_name()Questa funzione restituisce il nome del progetto.
get_description()Questa funzione restituisce la descrizione del progetto.
get_metadata()Questa funzione restituisce i metadati del progetto.
get_files()Questa funzione restituisce un elenco dei file nel tuo progetto. Ogni elemento nella lista restituita contiene l'ID e il nome del file. L'elenco dei file restituiti non è ordinato da alcun criterio e può cambiare quando si richiama nuovamente la funzione.
get_assets()Questa funzione restituisce un elenco di tutti gli asset del progetto. È possibile passare il parametro opzionale
assetTypealla funzioneget_assetsche consente di filtrare gli asset per tipo. I valori accettati per questo parametro sonodata_asset,connectioneasset. Il valoreassetrestituisce tutti gli asset nel tuo progetto. Ad esempio, per ottenere solo gli asset dati, utilizzare la funzioneget_assets("data_asset").get_connections()Questa funzione restituisce un elenco delle connessioni che hai nel tuo progetto. Ogni elemento nella lista restituita contiene l'ID e il nome della connessione.
Recupera file
È possibile utilizzare la seguente funzione per recuperare i file memorizzati nel proprio progetto.
get_file(filename)dovefilenameè il nome del file che si desidera recuperare.Questa funzione recupera un file nella memoria del kernel in esecuzione. La funzione restituisce un buffer di byte che può essere utilizzato per legare in strutture dati specifiche del kernel, ad esempio, un frame data. Questo metodo di caricamento dei file non è consigliato per file molto grandi.
Il seguente esempio mostra come recuperare un file e leggere i dati in un frame data R:
# Import project lib library("projectLib") project <- access_project() # Fetch data my.file <- project$get_file("my_file.csv") # Read the CSV data file into a data frame df.data <- read.csv(text = rawToChar(my.file)) head(df.data)
Salva dati
È possibile utilizzare la seguente funzione per salvare i dati come file del progetto. Questa funzione fa più cose. In primo luogo, mette i dati in un file e poi aggiunge questi dati come asset di dati al tuo progetto in modo da poter vedere i dati che hai salvato come file nella lista degli asset di dati nel tuo progetto.
save_data(filename, data, setProjectAsset=TRUE, overwrite=FALSE)La funzione assume i seguenti parametri:
filename: il nome del file creato.data: i dati da caricare. I tipi accettati per questo parametro sono oggetti non elaborati R o buffer stringa.setProjectAsset[optional]: aggiunge il file al progetto come asset di dati dopo che i dati sono stati caricati correttamente nel file. Utilizza un valore booleano e il valore true è impostato per impostazione predefinita.overwrite[optional]: sovrascrive il file se il file esiste già. Per impostazione predefinita è impostato su false.Di seguito viene riportato un esempio che mostra come salvare i dati in un file:
library("projectLib") project <- access_project() # Capture CSV data from console output csv_lines <- capture.output(write.csv(df.data, row.names=FALSE), type="output") csv_raw <- charToRaw(paste0(csv_lines, collapse='\n')) project$save_data("file.csv", csv_raw)
Leggi i dati da una connessione
È possibile utilizzare la seguente funzione per ottenere i metadati (credenziali) di una determinata connessione.
get_connection: la funzione assume come input l'ID della connessione o il nome della connessione. È possibile ottenere questi valori utilizzando la funzione get_assets() che restituisce id, name e type di tutti gli asset elencati nel progetto.
La funzione get_connection restituisce le credenziali di connessione che è possibile utilizzare per richiamare i dati dalla sorgente dati di connessione.
Di seguito un esempio, che mostra come è possibile recuperare le credenziali di una connessione utilizzando la funzione get_connection :
# Import project lib
library(projectLib)
project <- access_project()
# Fetch connection
conn.cred <- project$get_connection(name="<ConnectionName>")
Se la tua connessione è una connessione a dashDB , ad esempio, puoi recuperare i tuoi dati eseguendo il seguente codice:
library(ibmdbR)
props <- paste("DASHDB;DATABASE=BLUDB;HOSTNAME=", conn.cred$host, ";PORT=50000;PROTOCOL=TCPIP;", sep="")
conn <- idaConnect(props, uid = conn.cred$username, pwd = conn.cred$password, conType = "odbc")
idaInit(conn)
idf.1 <- ida.data.frame('<TableName>')
head(idf.1)
Recupero dati connessi
È possibile utilizzare la seguente funzione per richiamare le credenziali dei dati connessi. La funzione restituisce un dizionario che contiene le credenziali di connessione oltre a un attributo datapath che fa riferimento a dati specifici in tale connessione, ad esempio, una tabella in un'istanza dashDB o un database in un'istanza Cloudant .
get_connected_data: questa funzione assume come input l'ID dei dati connessi o il nome dei dati connessi. È possibile ottenere questi valori utilizzando la funzione get_assets() che restituisce id, name e type di tutti gli asset elencati nel progetto.
Di seguito viene riportato un esempio, che mostra come recuperare le credenziali dei dati connessi in una istanza di dashDB utilizzando la funzione get_connected_data :
# Import project lib
library(projectLib)
project <- access_project()
# Fetch credentials of the connected data
conn.data <- project$get_connected_data(id="<ConnectedDataId>")