def count_nonzero_mask(mask, size): assert mask.size * mask_bitsize >= size nnz = ffi.new('int*') nnz[0] = 0 mask_ptr, addr = unwrap_mask(mask) if addr != ffi.NULL: libgdf.gdf_count_nonzero_mask(mask_ptr, size, nnz) return nnz[0]
def count_nulls(mask, size): mask_bitsize = 8 assert mask.size * mask_bitsize >= size nnz = ffi.new('int*') nnz[0] = 0 mask_ptr = unwrap_devary(mask) if mask_ptr != ffi.NULL: libgdf.gdf_count_nonzero_mask(mask_ptr, size, nnz) return (size - nnz[0])