De documentatie voor RMySQL is redelijk goed, maar er wordt wel vanuit gegaan dat je de basis van SQL kent. Dit zijn:
- een database maken
- een tafel maken
- gegevens in de tabel krijgen
- gegevens uit de tabel halen
Stap 1 is eenvoudig:in de MySQL-console, eenvoudig "database DBNAME maken". Of gebruik vanaf de opdrachtregel mysqladmin , of er zijn vaak MySQL-beheerders-GUI's.
Stap 2 is iets moeilijker, omdat je de tabelvelden en hun type moet specificeren. Dit is afhankelijk van de inhoud van uw CSV-bestand (of een ander gescheiden bestand). Een eenvoudig voorbeeld zou er ongeveer zo uitzien:
use DBNAME;
create table mydata(
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
height FLOAT(3,2)
);
Die zegt maak een tabel met 2 velden:id , die de primaire sleutel zal zijn (dus uniek moet zijn) en automatisch wordt verhoogd als nieuwe records worden toegevoegd; en hoogte , die hier wordt gespecificeerd als een float (een numeriek type), met in totaal 3 cijfers en 2 achter de komma (bijv. 100,27). Het is belangrijk dat u gegevenstypen begrijpt .
Stap 3 - er zijn verschillende manieren om gegevens naar een tabel te importeren. Een van de gemakkelijkste is om de mysqlimport . te gebruiken nut. In het bovenstaande voorbeeld, ervan uitgaande dat uw gegevens zich in een bestand bevinden met dezelfde naam als de tabel (mijngegevens), de eerste kolom een tab-teken en de tweede de hoogtevariabele (zonder koprij), zou dit werken:
mysqlimport -u DBUSERNAME -pDBPASSWORD DBNAME mydata
Stap 4 - vereist dat u weet hoe u MySQL-query's moet uitvoeren. Nogmaals, een eenvoudig voorbeeld:
select * from mydata where height > 50;
Betekent "haal alle rijen (id + hoogte) op uit de tabel mydata waar de hoogte meer dan 50 is".
Als je die basis eenmaal onder de knie hebt, kun je overstappen op complexere voorbeelden, zoals het maken van 2 of meer tabellen en het uitvoeren van query's die gegevens van elk samenvoegen.
Dan - kunt u zich wenden tot de RMySQL-handleiding. In RMySQL stelt u de databaseverbinding in en gebruikt u vervolgens de SQL-querysyntaxis om rijen uit de tabel als een gegevensframe te retourneren. Het is dus echt belangrijk dat u het SQL-gedeelte krijgt - het RMySQL-gedeelte is eenvoudig.
Er zijn enorm veel MySQL- en SQL-tutorials op internet, waaronder de "officiële" zelfstudie op de MySQL-website. Zoek gewoon op Google naar "mysql-zelfstudie".
Persoonlijk beschouw ik 80 Mb helemaal niet als een grote dataset; Het verbaast me dat dit een RAM-probleem veroorzaakt en ik weet zeker dat native R-functies dit vrij gemakkelijk aankunnen. Maar het is goed om nieuwe vaardigheden zoals SQL te leren, zelfs als je ze niet nodig hebt voor dit probleem.