Phân cụm dữ liệu không gian trong R


12

Tôi có một bộ dữ liệu hàng tháng về nhiệt độ mặt nước biển (SST) và tôi muốn áp dụng một số phương pháp cụm để phát hiện các vùng có mẫu SST tương tự. Tôi có một tập hợp các tệp dữ liệu hàng tháng chạy từ năm 1985 đến năm 2009 và muốn áp dụng phân cụm cho mỗi tháng như một bước đầu tiên.

Mỗi tệp chứa dữ liệu có lưới cho 358416 điểm trong đó khoảng 50% là đất và được đánh dấu bằng giá trị 99,99 sẽ là NA. Định dạng dữ liệu là:

   lon     lat   sst
-10.042  44.979  12.38
 -9.998  44.979  12.69
 -9.954  44.979  12.90
 -9.910  44.979  12.90
 -9.866  44.979  12.54
 -9.822  44.979  12.37
 -9.778  44.979  12.37
 -9.734  44.979  12.51
 -9.690  44.979  12.39
 -9.646  44.979  12.36

Tôi đã thử phương pháp phân cụm CLARA và nhận được một số kết quả rõ ràng nhưng đối với tôi, đó chỉ là cách ly (nhóm). Sau đó, tôi không chắc đây là phương pháp phân cụm tốt nhất để phân tích dữ liệu không gian.

Có phương pháp phân cụm nào khác dành cho loại bộ dữ liệu này không? Một số tài liệu tham khảo sẽ là tốt để bắt đầu đọc.

Cảm ơn trước.


2
Bạn nên kiểm tra cran.r-project.org/web/view/Spatial.html . Có một vài gói có cụm ngay trong tên có lẽ sẽ được quan tâm.
Andy W

Bạn có tìm thấy gói R nào tốt để phân cụm dữ liệu không gian không?
kaptan

@kaptan Thật không may, tôi đã không làm và đó là một trong những
pacomet

(x,y,T)R3R

Câu trả lời:


2

Có cách tiếp cận khác nhau cho phương pháp phân cụm, phân chia và chinh phục có thể mở rộng, phân cụm song song và tăng dần. Đây là cách tiếp cận chung sau khi bạn có thể sử dụng các phương pháp phân cụm thông thường. Có một phương pháp phân cụm tốt mà tôi thực sự đánh giá cao là DBSCAN (Phân cụm ứng dụng không gian dựa trên mật độ có tiếng ồn), đây là một trong những thuật toán phân cụm được sử dụng nhiều nhất.


Ok, tôi sẽ tìm DBSCAN và dùng thử. Cảm ơn
pacomet

Nếu bất kỳ câu trả lời nào giúp bạn hoặc bạn tìm ra một cách khác thì tốt hơn là cung cấp cho chúng tôi, vì vậy tất cả cộng đồng sẽ tận dụng lợi thế đó. Hoặc chọn một câu trả lời để đóng câu hỏi, thx.
404Dreamer_ML

Tôi xin lỗi vì sự chậm trễ trong việc trả lời nhưng vấn đề là tôi không có nhiều thời gian để thử dbscan và những lần thử đầu tiên đã dẫn đến một vấn đề về bộ nhớ. R nói rằng nó không thể phân bổ vector. Tôi bắt đầu với một lưới cách nhau 4 km với 779191 điểm kết thúc ở 300000 điểm khi xóa đất (không hợp lệ) điểm SST. Có lẽ tôi không nhận được phương pháp đúng, bất kỳ gợi ý nào cũng sẽ được đánh giá cao.
pacomet

1
Xin chào, tôi vẫn không thể tìm ra giải pháp. Tôi đã đọc một số tài liệu về DBSCAN và có một số câu hỏi về. Làm thế nào để tìm khoảng cách tối thiểu với R? Vì dữ liệu của tôi là kinh độ, vĩ độ và nhiệt độ ba chiều, tôi nên sử dụng "khoảng cách" nào? kích thước của ai có liên quan đến khoảng cách đó? nhiệt độ? Có phương pháp nào để xác định số điểm tối thiểu cho một cụm không? Tìm kiếm thorugh Google Tôi không thể tìm thấy ví dụ R để sử dụng dbscan trong bộ dữ liệu tương tự như của tôi, bạn có biết trang web nào có loại ví dụ như vậy không? Vì vậy, tôi có thể đọc và cố gắng thích nghi với trường hợp của tôi. Cảm ơn một lần nữa
pacomet

0

Một thư viện python được ghi lại độc đáo để phân tích không gian có một số cụm là pySAL .

Một thư viện python khác trong giai đoạn phát triển tập trung vào phân cụm không gian là clusterPy (trình bày slide pdf) .

Với sự lựa chọn hạn chế hơn về thuật toán phân cụm nhưng với giao diện ánh xạ đẹp là phần mềm GUI GeoGrouper .


Cảm ơn, tôi chưa từng làm việc với trăn. Tôi sẽ cố gắng tìm một giải pháp R
pacomet
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.