Tôi đang tìm kiếm rất nhiều nhưng không thể tìm thấy chính xác những gì tôi cần cho đến bây giờ. Tôi có hai mảng số nguyên int [] x và int [] y. Tôi muốn tìm mối tương quan tuyến tính đơn giản giữa hai mảng nguyên và nó sẽ trả về kết quả là gấp đôi. Trong java bạn có biết bất kỳ chức năng thư viện nào cung cấp đoạn mã này hay bất kỳ đoạn mã nào không?Cách tìm mối tương quan giữa hai mảng số nguyên trong java
8
A
Trả lời
5
Không có gì trong Java lõi. Có thư viện ở đó bạn có thể sử dụng. Apache Commons có số statistical project, hãy kiểm tra PearsonCorrelation lớp học.
Mẫu mã:
public static void main(String[] args) {
double[] x = {1, 2, 4, 8};
double[] y = {2, 4, 8, 16};
double corr = new PearsonsCorrelation().correlation(y, x);
System.out.println(corr);
}
in ra 1,0
9
Tương quan là khá dễ dàng để tính toán:
http://en.wikipedia.org/wiki/Correlation_and_dependence
public static double Correlation(int[] xs, int[] ys) {
//TODO: check here that arrays are not null, of the same length etc
double sx = 0.0;
double sy = 0.0;
double sxx = 0.0;
double syy = 0.0;
double sxy = 0.0;
int n = xs.length;
for(int i = 0; i < n; ++i) {
double x = xs[i];
double y = ys[i];
sx += x;
sy += y;
sxx += x * x;
syy += y * y;
sxy += x * y;
}
// covariation
double cov = sxy/n - sx * sy/n/n;
// standard error of x
double sigmax = Math.sqrt(sxx/n - sx * sx/n/n);
// standard error of y
double sigmay = Math.sqrt(syy/n - sy * sy/n/n);
// correlation is just a normalized covariation
return cov/sigmax/sigmay;
}
Các vấn đề liên quan
- 1. Java: Thiết lập mối tương quan giữa các tham số kiểu
- 2. Cách thức xử lý mối quan hệ hai chiều giữa các tài nguyên
- 3. Cách lấy mối tương quan giữa hai khoảng thời gian sử dụng Pandas
- 4. Cách xóa mối quan hệ giữa hai thực thể
- 5. Tôi tìm thấy hai plugin android gradle - Có mối quan hệ nào giữa hai người không?
- 6. Duy trì mối quan hệ hai chiều giữa các lớp
- 7. Grails: nhiều mối quan hệ giữa hai đối tượng miền
- 8. Tính toán mối tương quan giữa hai dataframes yêu cầu một vòng lặp?
- 9. Làm thế nào để tìm sự khác biệt giữa hai mảng số nguyên?
- 10. Tạo mối quan hệ ManyToMany giữa hai mô hình
- 11. để tìm mối quan hệ của hai người dùng twitter
- 12. Tìm xác suất của hai số nguyên được chọn ngẫu nhiên (từ n số nguyên) tương đối nguyên tố
- 13. Mối quan hệ giữa nhiều mối quan hệ giữa nhiều mô hình
- 14. Chủ sở hữu mối quan hệ nghĩa là gì trong mối quan hệ hai chiều?
- 15. giá trị giữa hai số nguyên
- 16. Cách lưu trữ các mối quan hệ hai chiều
- 17. Mối quan hệ giữa java.library.path và classpath
- 18. Mối quan hệ giữa UIView và CALayer
- 19. Chia hai số nguyên thành hai lần trong java
- 20. cách tìm sự giống nhau giữa hai đường cong và điểm số tương tự?
- 21. Số nguyên là hai chữ số thập phân trong Java
- 22. Mối quan hệ giữa JTable, TableModel & TableData
- 23. Trong Python, làm thế nào tôi có thể tính toán mối tương quan và ý nghĩa thống kê giữa hai mảng dữ liệu?
- 24. So sánh hai mảng nguyên thủy trong Java?
- 25. Javascript: so sánh hiệu quả hai mảng số nguyên
- 26. Tìm số lượng 1s trong vị trí tương đương trong hai mảng
- 27. Sự khác biệt số nguyên trong python giữa hai ngày
- 28. Mối quan hệ với chủ đề Java
- 29. Mối quan hệ giữa appdelegate và main.m
- 30. Tìm ma trận tương quan
@Mvorisek: nó có thể là 'i ++ 'hoặc '++ i'; '+ + i' có thể nhanh hơn một chút (không cần phải quay trở lại trạng thái tràn lan) trên các trình biên dịch cũ. Chỉ cần một habbit từ Intel 8086 lần và 'C' trình biên dịch cho họ ... –
Điều này không bao gồm các trường hợp là xs và ys có chiều dài khác nhau. – htellez
@htellez: tương quan (hoặc thậm chí covariation) muốn độ dài bằng nhau, hoặc một nên mở rộng định nghĩa tương quan tiêu chuẩn. –