当前位置: 首页 > java >正文

R语言学习--Day02--实战经验反馈

最近在做需要用R语言做数据清洗的项目,在网上看再多的技巧与语法,都不如在项目中实战学习的快,下面是我通过实战得来的经验。

判断Rstudio是否卡死

很多时候,我们在运行R语言代码时,即使只是运行框选的几行代码,也会运行很久。其实,除了观察控制台是否有>或者>闪烁,以及在终端用命令查看运行状态之外,还可以观察我们的右上角的运行内存,如果在运行的过程中,观察其变化区间,如果在100M或以上,就算是正常,如果变化很少或基本不动,那就要考虑是否卡死了。(有时候Rstudio卡死并不会有提醒你重启的弹窗)

warnings()

有时候,我们在运行代码的过程中会看到控制台弹出error或者warning,但代码仍然能继续运行;此时记得分辨其意思,不要盲目得忽视。有时候的确只是提示我们某些包的版本过低需要更新,或者是画图的代码有问题,但不影响实际使用;但是有时候的warning,比如我们调用连接语法right_join或left_join时,如果对于识别拼接的列名或变量没有做好预处理的话,很容易弹出warning,在控制台打印warnings()的话,会看到比如“16564 of 'x' 匹配了 16 of 'y'”的警告,这个一般是因为有过多重复的列名,需要提前做去重的预处理。

数据类型

不同于其他语言,在控制台打印数据类型时,我们往往能看到输出不止一个,代表其拥有很多数据特性。对应的,用于筛选的语法,就显得尤为重要。这不只是,会不会报错的问题,更是关乎于发现问题的方向。比如,如果我们使用了其他类型的语法,而不是单纯的语法使用方法的错误,有时报错会显示要筛选的列名或数据不在列表或数据框里,但你打印列名,却又能看到其在里面。而这往往就是我们使用了错误的语法,导致代码无法识别数据的结构,打不开数据,也就找不到对应的数据了。

当然,并不是说语法方法使用错误,就只会报错提示我们去改了。这也是一个需要重视的问题,其危害往往藏在我们看不见,又尤为重要的地方。很多时候我们语法使用不妥当,是不会报错的,相反,代码依旧会运行,但是你会发现结果跟我们想的不一样,这个时候可能就会把我们思考问题的方向带偏,去思考是不是数据本身有问题了。比如,只是单纯的根据时间筛选最早的值赋予base.cr,使用pull(value)和直接用mutate新建一个变量,看似前者更简洁,算力节省更多,实际上,却会因为其逻辑是遍历每个数据去筛选,而后者则只是在某一行直接读数据,每次处理的数据量不同,前者会让代码一直在跑,等待的时间很久。(特别的,如果在运行代码时,没有报错,Rstudio也没有卡死,但观察运行内存变化在一个小区间内反复横跳,这个时候要注意是否是因为筛选的语法选择错了)

http://www.xdnf.cn/news/6190.html

相关文章:

  • 基于EFISH-SCB-RK3576/SAIL-RK3576的智慧路灯控制器技术方案
  • 高压开关/断路器机械特性试验的目的及设备
  • [python] python静态方法,类方法,实例方法实现及其区别
  • 【沉浸式求职学习day39】【双指针算法题】
  • 公链开发及其配套设施:钱包与区块链浏览器
  • 【Python】杂乱-[代码]Python 输出/打印列表(list)的方法
  • 三子棋设计
  • C#上位机RS485通信控制变频器
  • 3、ubantu系统docker常用命令
  • Centos 上安装Klish(clish)的编译和测试总结
  • NixOS 系统深度解析
  • Profibus DP主站转Modbus RTU/TCP网关接艾默生流量计与上位机通讯
  • Apache Pulsar 消息、流、存储的融合
  • 【Bootstrap V4系列】学习入门教程之 组件-导航条(Navbar)
  • MQTT详细介绍
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】附录-A. PostgreSQL常用函数速查表
  • 基于EFISH-SCB-RK3576/SAIL-RK3576的智能快递分拣机技术方案‌
  • 时序数据库IoTDB分布式系统监控基础概述
  • 小白成长之路-文件和目录内容检索处理(二)
  • 【C++重载操作符与转换】纯虚函数
  • 尚硅谷阳哥JVM
  • 智能工具协同赋能STEM教育科研|探索LLM大语言模型和数学软件Maple的创新实践
  • 2025年城市建设与交通运输国际会议(ICUCT 2025)
  • Baklib全场景知识中台驱动效能跃升
  • less中使用 @supports
  • 在C++中进行套接字编程时,主要使用以下头文件
  • CSS:选择器的优先级
  • 深入剖析某App视频详情逆向:聚焦sig3参数攻克
  • (10天冲刺版)软考:软件设计师 真题资料分享
  • Java高频面试之并发编程-17