R语言入门指南:中文版

需积分: 9 3 下载量 192 浏览量 更新于2024-07-25 收藏 720KB PDF 举报
"R语言入门教材-中文,由Emmanuel Paradis编写,旨在为初学者提供R语言基础知识的讲解,包括工作原理、基本概念和数据操作。该教材已由四位志愿者翻译成中文,并由华东师范大学汤银才老师编辑校订,北京大学李东风老师审阅。" 《R for Beginners》中文版2.0是针对R语言初学者的一本经典入门教材,由Emmanuel Paradis博士撰写,其原版始于2002年,此次是基于2005年的修订版。这本书以易懂的方式介绍了R语言的基本概念和工作原理,旨在帮助新手快速建立起对R语言的理解。 第一章引言,向读者介绍了R语言的基本背景和学习目标,让读者明白为何选择R以及如何开始学习R。它为后续章节的学习铺平道路,使初学者对R有一个整体的认识。 第二章基本原理,涵盖了R语言的核心概念,包括如何创建、管理和删除对象,这是使用R进行数据处理的基础。这部分内容会讲解R中的变量、数据类型以及如何在R环境中执行基本操作。 第三章R的数据操作,详细介绍了R中处理数据的方法。这包括数据的读取、存储、查看、转换和计算等操作。这部分内容对于数据分析至关重要,因为R的强大之处在于其处理和分析数据的能力。 在学习过程中,教材结合了大量的图表和实例,以直观的方式解释复杂的概念,确保读者能够轻松理解。同时,书中还提供了在线帮助的指南,帮助初学者在遇到问题时能快速找到解决方案。 此外,本书的翻译和编辑工作得到了志愿者团队的努力,他们为中文版的质量做出了贡献。译者和审阅者均来自知名的教育机构,确保了内容的准确性和专业性。尽管可能存在一些仓促编译导致的错误,但读者可以通过联系邮箱提供反馈,共同改进和完善这本教材。 《R for Beginners Chinese Edition 2.0》是一本非常适合初学者的R语言入门教程,它不仅提供了全面的基础知识,还注重实践操作,使学习过程更加生动和实用。通过阅读本书,读者可以逐步掌握R语言,为进一步的数据分析和统计建模打下坚实基础。

void Trajectory::predict_box( uint idx_duration, std::vector<Box>& vec_box, std::vector<Eigen::MatrixXf, Eigen::aligned_allocatorEigen::MatrixXf>& vec_cova, bool& is_replay_frame) { vec_box.clear(); vec_cova.clear(); if (is_replay_frame) { for (auto iter = map_current_box_.begin(); iter != map_current_box_.end(); ++iter) { Destroy(iter->second.track_id()); } m_track_start_.Clear_All(); NU = 0; is_replay_frame = false; } Eigen::MatrixXf F_temp = F_; F_temp(0, 1) = idx_duration * F_(0, 1); F_temp(2, 3) = idx_duration * F_(2, 3); F_temp(4, 5) = idx_duration * F_(4, 5); uint64_t track_id; Eigen::Matrix<float, 6, 1> state_lidar; Eigen::Matrix<float, 6, 6> P_kkminus1; Eigen::Matrix3f S_temp; for (auto beg = map_current_box_.begin(); beg != map_current_box_.end(); ++beg) { float t = (fabs(0.1 - beg->second.frame_duration()) > 0.05) ? 0.1 : 0.2 - beg->second.frame_duration(); F_temp(0, 1) = t; F_temp(2, 3) = t; F_temp(4, 5) = t; // uint64_t timestamp_new = beg->second.timestamp() + uint(10.0 * t * NANO_FRAME); track_id = beg->first; state_lidar = F_temp * map_lidar_state_.at(track_id); P_kkminus1 = F_temp * map_lidar_cova_.at(track_id) * F_temp.transpose() + Q_lidar_; S_temp = H_ * P_kkminus1 * H_.transpose() + R_lidar_; float psi_new = (1 - P_D_ * P_G_) * beg->second.psi() / (1 - P_D_ * P_G_ * beg->second.psi()); Box bbox = beg->second; bbox.set_psi(psi_new); // bbox.set_timestamp(timestamp_new); bbox.set_position_x(state_lidar(0)); bbox.set_position_y(state_lidar(2)); bbox.set_position_z(state_lidar(4)); bbox.set_speed_x(state_lidar(1)); bbox.set_speed_y(state_lidar(3)); bbox.set_speed_z(state_lidar(5)); vec_box.emplace_back(bbox); vec_cova.emplace_back(S_temp); } AINFO << "Finish predict with duration frame num: " << idx_duration; } 代码解读

2023-07-15 上传