Tôi đang ở trong biến dữ liệu thô
Có một mảng ô 50x25 trong . Mỗi ô chứa một ma trận 200x150. tôi có một ít NaN
Các giá trị nằm rải rác giữa tất cả các giá trị này và tôi muốn đặt chúng thành số không
để đảm bảo chúng không can thiệp vào giai đoạn sau.
Tôi đã thử như sau:
raw_data(cellfun(@(x) Any(isnan(x), raw_data, 'UniformOutput', false)) = 0
Khi chạy tập lệnh tôi nhận được "Hàm 'subindex' không được xác định cho các giá trị của lớp 'ô'". Có ai có thể giúp tôi được không?
Cảm ơn trước!
这个怎么样:
cellfun(@(x) nansum(x,ndims(x)+1), raw_data, 'UniformOutput', false)
Xin lưu ý rằng nếu bạn chắc chắn dữ liệu thô
Chỉ có ma trận hai chiều trong , bạn có thể đặt ndims(x)+1
Thay thế bằng 3
>.
Ý tưởng là sử dụng nansum
Tính tổng theo chiều thứ 3 vì điều này sẽ giữ nguyên hình dạng của 2 chiều đầu tiên, may mắn thay nansum
dường như chuyển đổi NaN
đến 0
Khi tất cả các phần tử được tính tổng NaN
Tôi là một lập trình viên xuất sắc, rất giỏi!