Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro: SQL Server 2016 (13.x) a novější verze
Toto je 13. tutoriál ze série RevoScaleR, jak používat funkce RevoScaleR se SQL Server.
V tomto tutoriálu se naučíte, jak používat soubor XDF k přenosu dat mezi vzdáleným a lokálním výpočetním kontextem. Uložení dat do XDF souboru umožňuje provádět transformace na datech.
Když skončíte, použijete data ze souboru k vytvoření nové tabulky SQL Server. Funkce rxDataStep dokáže aplikovat transformace na data a provádět převod mezi datovými rámci a soubory .xdf.
Vytvořte tabulku SQL Server ze souboru XDF
Pro toto cvičení opět použijete data o podvodech s kreditními kartami. V tomto scénáři jste byli požádáni, abyste provedli další analýzu uživatelů ve státech Kalifornie, Oregon a Washington. Pro větší efektivitu jste se rozhodli ukládat data pouze pro tyto stavy na svém lokálním počítači a pracovat pouze s proměnnými jako pohlaví, držitel karty, stav a zůstatek.
Znovu použijte
stateAbbproměnnou, kterou jste vytvořili dříve, k identifikaci úrovní, které je třeba zahrnout, a zapište je do nové proměnné.statesToKeepstatesToKeep <- sapply(c("CA", "OR", "WA"), grep, stateAbb) statesToKeepResults
CA OR WA 5 38 48 Definujte data, která chcete přenést z SQL Server, pomocí dotazu Transact-SQL. Později tuto proměnnou použijete jako argument inData pro rxImport.
importQuery <- paste("SELECT gender,cardholder,balance,state FROM", sqlFraudTable, "WHERE (state = 5 OR state = 38 OR state = 48)")Ujistěte se, že v dotazu nejsou žádné skryté znaky, jako jsou řádky nebo záložky.
Dále definujte sloupce, které se používají při práci s daty v R. Například v menší datové sadě potřebujete pouze tři faktorové úrovně, protože dotaz vrací data pouze pro tři stavy. Použijte proměnnou
statesToKeepk určení správných úrovní, které je třeba zahrnout.importColInfo <- list( gender = list( type = "factor", levels = c("1", "2"), newLevels = c("Male", "Female")), cardholder = list( type = "factor", levels = c("1", "2"), newLevels = c("Principal", "Secondary")), state = list( type = "factor", levels = as.character(statesToKeep), newLevels = names(statesToKeep)) )Nastavte výpočetní kontext na lokální, protože chcete, aby všechna data byla dostupná na vašem lokálním počítači.
rxSetComputeContext("local")Funkce rxImport dokáže importovat data z jakéhokoli podporovaného zdroje do lokálního XDF souboru. Použití lokální kopie dat je pohodlné, když chcete provádět různé analýzy dat, ale chcete se vyhnout opakovanému spouštění stejného dotazu.
Vytvořte objekt zdrojového data předáním proměnných dříve definovaných jako argumenty do RxSqlServerData.
sqlServerImportDS <- RxSqlServerData( connectionString = sqlConnString, sqlQuery = importQuery, colInfo = importColInfo)Zavolejte rxImport a zapište data do souboru s názvem
ccFraudSub.xdf, v aktuálním pracovním adresáři.localDS <- rxImport(inData = sqlServerImportDS, outFile = "ccFraudSub.xdf", overwrite = TRUE)Objekt vrácený
localDsfunkcí rxImport je lehký zdroj dat RxXdfData , který reprezentuje datový soubor uloženýccFraud.xdflokálně na disku.Zavolejte rxGetVarInfo na soubor XDF, abyste ověřili, že datové schéma je stejné.
rxGetVarInfo(data = localDS)Results
rxGetVarInfo(data = localDS) Var 1: gender, Type: factor, no factor levels available Var 2: cardholder, Type: factor, no factor levels available Var 3: balance, Type: integer, Low/High: (0, 22463) Var 4: state, Type: factor, no factor levels availableNyní můžete volat různé R funkce pro analýzu localDs objektu, stejně jako byste to dělali se zdrojovými daty na SQL Server. Například můžete shrnout podle pohlaví:
rxSummary(~gender + cardholder + balance + state, data = localDS)
Další krok
Tento tutoriál uzavírá vícedílnou sérii tutoriálů o RevoScaleR a SQL Server. Seznámil vás s mnoha datovými a výpočetními koncepty, což vám dalo základ pro pokračování ve vašich vlastních datových a projektových potřebách.
Pro prohloubení znalostí RevoScaleR se můžete vrátit do seznamu tutoriálů v R a projít si případná cvičení, která jste mohli přehlédnout. Případně si prostudujte články s návody v obsahu pro informace o obecných úkolech.