Trong dữ liệu một chiều, không sử dụng phân tích cụm.
Phân tích cụm thường là một kỹ thuật đa biến. Hoặc để tôi nói tốt hơn theo cách khác: đối với dữ liệu một chiều - được sắp xếp hoàn toàn - có nhiều kỹ thuật tốt hơn. Sử dụng phương tiện k và các kỹ thuật tương tự ở đây là một sự lãng phí hoàn toàn, trừ khi bạn nỗ lực đủ để thực sự tối ưu hóa chúng cho trường hợp 1-d.
Chỉ để cho bạn một ví dụ: đối với k-có nghĩa là thông thường sử dụng k đối tượng ngẫu nhiên làm hạt giống ban đầu. Đối với dữ liệu một chiều, khá dễ dàng để làm tốt hơn bằng cách chỉ sử dụng các lượng tử thích hợp (1 / 2k, 3 / 2k, 5 / 2k, v.v.), sau khi sắp xếp dữ liệu một lần , sau đó tối ưu hóa từ điểm bắt đầu này. Tuy nhiên, dữ liệu 2D không thể được sắp xếp hoàn toàn. Và trong một lưới, có khả năng sẽ có các ô trống.
Tôi cũng sẽ không gọi nó là cụm. Tôi sẽ gọi nó là khoảng . Những gì bạn thực sự muốn làm là để tối ưu hóa các đường viền khoảng. Nếu bạn thực hiện k-mean, nó sẽ kiểm tra từng đối tượng nếu nó được chuyển sang cụm khác. Điều đó không có ý nghĩa trong 1D: chỉ các đối tượng ở các đường viền khoảng cần được kiểm tra. Điều đó rõ ràng là nhanh hơn nhiều, vì chỉ có ~ 2k đối tượng ở đó. Nếu họ không thích các khoảng khác, các đối tượng trung tâm hơn cũng sẽ không.
Bạn có thể muốn xem xét các kỹ thuật như tối ưu hóa Jenks Natural Breaks chẳng hạn.
Hoặc bạn có thể thực hiện ước tính mật độ hạt nhân và tìm cực tiểu cục bộ của mật độ để phân chia ở đó. Điều tuyệt vời là bạn không cần chỉ định k cho việc này!
PS vui lòng sử dụng chức năng tìm kiếm. Dưới đây là một số câu hỏi về phân cụm dữ liệu 1-d mà bạn đã bỏ lỡ: