Cách chứng minh thống kê nếu một cột có dữ liệu phân loại hoặc không sử dụng Python


10

Tôi có một khung dữ liệu trong python nơi tôi cần tìm tất cả các biến phân loại. Kiểm tra loại cột không phải lúc nào cũng hoạt động vì intloại cũng có thể được phân loại.

Vì vậy, tôi tìm kiếm sự giúp đỡ trong việc tìm ra phương pháp kiểm tra giả thuyết phù hợp để xác định xem một cột có phân loại hay không.

Tôi đã thử dưới bài kiểm tra chi bình phương nhưng tôi không chắc liệu điều này có đủ tốt không

import numpy as np
data = np.random.randint(0,5,100)
import scipy.stats as ss
ss.chisquare(data)

Xin tư vấn.


1
Bạn có thể làm rõ nếu tôi đã hiểu chính xác rằng bạn muốn phân biệt giữa int được sử dụng như một biến số thứ tự và được sử dụng như mã hóa phân loại tùy ý? Tôi không có câu trả lời, nhưng nó có thể giúp những người đọc khác hiểu rõ những gì bạn muốn. Theo trực giác tôi không nghĩ Chi2 có thể làm công việc một cách đáng tin cậy.
ReneBt

Có bạn đúng. Ngoại trừ trọng tâm của tôi không phải là loại biến mà là dữ liệu mà nó mang theo. Vì vậy, trong mã ví dụ tôi đã chia sẻ kết quả nên là một biến phân loại vì nó chỉ có 5 giá trị duy nhất.
Amit

1
Trường hợp quy tắc "kết quả nên là một biến phân loại vì nó chỉ có 5 giá trị duy nhất." đến từ?
Dennis Soemers 23/03/18

Ồ, đó không phải là quy tắc, theo trực giác tôi biết rằng tất cả dữ liệu cột của tôi chỉ là 5 giá trị này.
Amit

Mặc dù những người khác đã chỉ ra một cách chính xác rằng nó không thể được thực hiện, tuy nhiên điều này sẽ tạo ra một vấn đề máy học thú vị. Không nghi ngờ gì nữa, có những lĩnh vực vấn đề trong đó dự đoán chính xác hợp lý có thể được thực hiện.
John Coleman

Câu trả lời:


34

Câu trả lời ngắn gọn: bạn không thể.

Không có kiểm tra thống kê nào sẽ cho bạn biết liệu một công cụ dự đoán có chứa các số nguyên từ 1 đến 10 là một công cụ dự đoán số (ví dụ: số trẻ em) hoặc mã hóa mười loại khác nhau. .

Cách duy nhất để chắc chắn là tận dụng chuyên môn về miền, hoặc cuốn sách mã của bộ dữ liệu (vốn luôn luôn tồn tại).


14
"Cuốn sách mã của tập dữ liệu (luôn luôn tồn tại)" - Ha, một cuốn tốt.
Kodiologist 23/03/18

12

Bất cứ tiêu chí nào - hoặc quy tắc ngón tay cái - làm việc cho tập dữ liệu của bạn đều được chào đón, nhưng chúng tôi không thể thấy dữ liệu của bạn. Trong mọi trường hợp, vấn đề thường được giải quyết tốt hơn và không cần tham khảo bất kỳ phần mềm cụ thể nào.

Nó tệ hơn bạn nghĩ, ngay cả khi bạn nghĩ nó tệ hơn bạn nghĩ.

  1. Câu trả lời của @Stephan Kolassa đã đưa ra một điểm chính. Số nguyên nhỏ có thể có nghĩa là đếm chứ không phải loại: 3, có nghĩa là 3 ô tô hoặc mèo, không giống như 3, có nghĩa là "người sở hữu một chiếc xe hơi" hoặc "người được sở hữu bởi một con mèo".

  2. Điểm thập phân có thể ẩn trong các biến phân loại, như là một phần của phân loại được mã hóa, ví dụ như các ngành công nghiệp hoặc bệnh tật.

  3. Các phép đo có ý nghĩa nghiêm ngặt chỉ có thể là số nguyên theo quy ước, ví dụ: chiều cao của người có thể được báo cáo là số nguyên cm hoặc inch, áp lực máu là số nguyên mm Hg.

  4. Số lượng các giá trị riêng biệt (một thuật ngữ tốt hơn "duy nhất", vẫn có ý nghĩa chính là chỉ xảy ra một lần) cũng không phải là một hướng dẫn tốt. Số lượng chiều cao khác nhau của những người có thể trong các mẫu vừa phải có lẽ ít hơn nhiều so với số lượng các liên kết tôn giáo hoặc nguồn gốc dân tộc khác nhau.


+1. Đây là một danh sách tốt của những điều cần xem xét. Bạn nên kết hợp điều này với kiến ​​thức tên miền của bạn về bộ dữ liệu (và bất kỳ tài liệu nào) để tự động phát hiện biến phân loại.
Anna

@Anna Tôi sẽ nói rằng không nên thực hiện phát hiện tự động và chính xác là điều có thể khiến bạn gặp rắc rối như được nêu trong chủ đề này. Kiến thức và tài liệu tên miền nên dễ dàng xác định các biến đa hình trong số các biến khác, do đó bạn không phải đoán.
prince_of_pears

7

Vâng, tôi nghĩ nó thậm chí còn tệ hơn các câu trả lời khác cho thấy: dữ liệu không phải là thông số phụ phân loại hoặc số æternatis - "mức độ đo lường" là thứ được nhà phân tích quy định để trả lời một câu hỏi cụ thể trong một dịp cụ thể. Xem câu trả lời của Glen_b tại đây .

Đó là tầm quan trọng thực tế để hiểu điều đó. Ví dụ, với cây phân loại, sự phân biệt giữa các yếu tố dự báo tỷ lệ, khoảng và mức thứ tự không có kết quả: sự khác biệt duy nhất quan trọng là giữa các yếu tố dự đoán thứ tự & danh nghĩa. Việc hạn chế thuật toán để phân tách yếu tố dự đoán tại một điểm dọc theo một đường thẳng, tách biệt cao hơn với các giá trị thấp hơn, có thể có tác động đáng kể đến hiệu suất dự đoán của nó, tốt hay xấu, tùy thuộc vào độ mượt của mối quan hệ của yếu tố dự đoán (chính thức) đối với đáp ứng & kích thước của tập dữ liệu. Không có cách nào hợp lý để đưa ra quyết định chỉ dựa vào việc suy nghĩ về cách biến dự đoán đại diện cho thực tế bất kể phân tích mà bạn sắp thực hiện, hãy để ý đến những giá trị bạn đã tìm thấy trong một mẫu.


0

Đây là một câu hỏi nghiên cứu mở. Xem ví dụ công việc của Valera et al. ( giấy ) hoặc phần mở rộng (ví dụ: của Dhir và cộng sự - giấy ).

Biên tập:

Một thực tiễn phổ biến trong thống kê và học máy là giả định rằng các loại dữ liệu thống kê (ví dụ: thứ tự, phân loại hoặc giá trị thực) của các biến và thông thường, cũng là mô hình khả năng được biết đến. Tuy nhiên, khi tính khả dụng của dữ liệu trong thế giới thực tăng lên, giả định này trở nên quá hạn chế. Dữ liệu thường không đồng nhất, phức tạp và được ghi lại không đúng hoặc không đầy đủ. Đáng ngạc nhiên, mặc dù tầm quan trọng thực tế của chúng, vẫn còn thiếu các công cụ để tự động khám phá các loại thống kê, cũng như các mô hình khả năng (nhiễu) thích hợp cho các biến trong bộ dữ liệu.

(Từ giấy Valera.)

Vì vậy, khi chúng tôi nói rằng đây là một "câu hỏi mở" (tự trích dẫn một cách kỳ lạ), chúng tôi muốn nói rằng hiện tại không có phương pháp tự động tốt nào để suy ra loại dữ liệu được cung cấp một mẫu hữu hạn. Nếu bạn có một mẫu vô hạn thì điều này sẽ dễ dàng, nhưng vì điều đó là không thể, chúng tôi cần hoàn nguyên về các phương tiện khác.


Bạn có thể cho chúng tôi biết những gì bạn đang đề cập đến bằng "câu hỏi nghiên cứu mở"? Vui lòng xem xét giải thích làm thế nào câu trả lời của bạn không (hoặc không!) Mâu thuẫn với các câu trả lời khác trong chủ đề này.
whuber

Chắc chắn, hãy để tôi chỉnh sửa câu trả lời của tôi.
Astrid

Cảm ơn bạn. Dường như đối với tôi, khi xem qua bài báo Valera, nó đưa ra một tuyên bố mạnh mẽ hơn nhiều: cụ thể là, nó có một phương pháp để đoán về các loại biến và đặc biệt là để phân biệt giữa dữ liệu phân loại và thông thường. Tôi đã không nghiên cứu phương pháp này, nhưng giả sử nó phải dựa trên (ít nhất là một phần) trong việc xem xét mối quan hệ giữa các biến đó và các biến khác mà chúng được cho là có liên quan. Tôi không thể hiểu làm thế nào một "mẫu vô hạn" (bất cứ điều gì có thể) sẽ được sử dụng bổ sung: bạn có thể giải thích làm thế nào điều đó sẽ làm cho vấn đề trở nên "dễ dàng" không?
whuber

Nó thực sự là một phương pháp rất mạnh mẽ và bản thân tôi đã nghiên cứu nó một cách chi tiết (điều này khiến tôi hơi thiên vị cho bạn); nhưng họ nghĩ rất thông minh. Chúng tôi giả định rằng mỗi loại cột có thể được mô tả dưới dạng hỗn hợp các loại (giống như mô hình hỗn hợp) và sau đó chúng tôi tìm cách tìm loại có trọng số cao nhất và sau đó gọi loại tương ứng là loại thực của biến. Theo như suy luận kiểu, nó rất thông minh, và phương pháp tự động tốt nhất (mà tôi biết). Nếu người khác biết về người khác, xin vui lòng chia sẻ!
Astrid
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.