Các tài liệu cho RMySQL là khá tốt - nhưng nó giả định rằng bạn biết những điều cơ bản của SQL. Đó là:
- tạo ra một cơ sở dữ liệu
- tạo một bảng
- nhận được dữ liệu vào bảng
- lấy dữ liệu ra khỏi bảng
Bước 1 là đơn giản: trong MySQL console , chỉ cần "tạo cơ sở dữ liệu DBNAME". Hoặc từ dòng lệnh, sử dụng mysqladmin hoặc thường có GUI quản trị MySQL.
Bước 2 khó hơn một chút vì bạn phải chỉ định trường bảng và loại của chúng. Điều này sẽ phụ thuộc vào nội dung của tệp CSV của bạn (hoặc được phân cách khác). Một ví dụ đơn giản sẽ giống như thế:
use DBNAME;
create table mydata(
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
height FLOAT(3,2)
);
Mà nói tạo ra một bảng với 2 lĩnh vực: id, đó sẽ là khóa chính (như vậy có phải là duy nhất) và sẽ autoincrement như kỷ lục mới được bổ sung; và chiều cao, ở đây được chỉ định là phao (loại số), có tổng 3 chữ số và 2 sau dấu thập phân (ví dụ: 100,27). Điều quan trọng là bạn hiểu được data types.
Bước 3 - có nhiều cách khác nhau để nhập dữ liệu vào bảng. Một trong những cách dễ nhất là sử dụng tiện ích mysqlimport. Trong ví dụ trên, giả sử dữ liệu của bạn nằm trong một tệp có cùng tên với bảng (mydata), cột đầu tiên là ký tự tab và biến thứ hai chiều cao (không có hàng tiêu đề), điều này sẽ hoạt động:
mysqlimport -u DBUSERNAME -pDBPASSWORD DBNAME mydata
Bước 4 - yêu cầu bạn biết cách chạy truy vấn MySQL. Một lần nữa, một ví dụ đơn giản:
select * from mydata where height > 50;
Có nghĩa là "tìm nạp tất cả các hàng (id + chiều cao) từ bảng mydata nơi chiều cao lớn hơn 50".
Khi bạn đã nắm vững những điều cơ bản đó, bạn có thể chuyển sang các ví dụ phức tạp hơn như tạo 2 hoặc nhiều bảng và chạy truy vấn tham gia dữ liệu từ mỗi.
Sau đó - bạn có thể chuyển sang hướng dẫn RMySQL.Trong RMySQL, bạn thiết lập kết nối cơ sở dữ liệu, sau đó sử dụng cú pháp truy vấn SQL để trả về các hàng từ bảng dưới dạng một khung dữ liệu. Vì vậy, nó thực sự quan trọng là bạn nhận được phần SQL - phần RMySQL là dễ dàng.
Có rất nhiều hướng dẫn về MySQL và SQL trên web, bao gồm cả "chính thức" tutorial tại trang web MySQL. Chỉ cần Google tìm kiếm "mysql tutorial".
Cá nhân, tôi không coi 80 Mb là một tập dữ liệu lớn; Tôi ngạc nhiên rằng điều này gây ra vấn đề về RAM và tôi chắc chắn rằng các hàm R gốc có thể xử lý nó khá dễ dàng. Nhưng tốt hơn là học các kỹ năng mới như SQL, ngay cả khi bạn không cần chúng cho vấn đề này.
Nếu bạn đang đi để là người duy nhất truy cập vào cơ sở dữ liệu của bạn, sqlite có thể là một lựa chọn tốt (và ít rắc rối hơn để thiết lập) ... Ngoài ra, 80mb không có vẻ giống như một tập dữ liệu rất lớn - bạn có thể cho chúng tôi một ví dụ mà bạn hết RAM? –
Đồng ý, 80 Mb thực tế là không có gì. Có lẽ có một số vấn đề khác với máy hoặc mã của bạn? – neilfws
@Aaron, @Neil - Bạn nói đúng. Nhìn lại điều này với một giấc ngủ ngắn, bộ dữ liệu của tôi không lớn, chỉ lớn hơn những gì tôi đã làm trong quá khứ. 80> 2, nhưng gb >> mb, vì vậy tôi cần phải đi qua mã một lần nữa (và tăng sự kiên nhẫn của tôi). Cảm ơn. –