学习笔记,有错必究,仅供参考


逐行读取文件并对字符串按照字母顺序排序

我们知道R的很多函数(比如read.csv)都是将文件一次性读进内存的,我们也知道(假设都知道)python中是用open函数打开一个文件,创建一个file对象,之后再用file.readline()方法得到一行数据的,那么我么如何实现类似于python这样的操作呢?

我们可以使用file函数。

file函数

file(description = "", open = "", blocking = TRUE,encoding = getOption("encoding"), raw = FALSE,method = getOption("url.method", "default"))

该函数可以打开一个与文件的连接。

案例

现在,我有30行字符串,他们装在一个txt文件中,我想用R将其导入,再按照他们的首字母顺序,对其进行排序,最后将结果输出,下面是我的实现步骤:

setwd("C:/Users/goatbishop/Desktop/data")
data01 <- file("data0712.txt", "r")data02 <- c()
line = readLines(data01, n = 1)
while(length(line) != 0) {data02 <- c(data02, line)line = readLines(data01, n = 1)
}close(data01)sorted_data <- sort(data02)
print(sorted_data)
write.csv(sorted_data, "sorted.csv")

部分输出:

[1] "Chang, Y. ...
[2] "Cheng, J.L. ...
[3] "Dong, C., ...

R语言观察日志(part10)--file函数相关推荐

  1. R语言观察日志(part4)--paste函数

    学习笔记 转载自:R语言中字符串的拼接操作 paste函数 在R语言中 paste 是一个很有用的字符串处理函数,可以连接不同类型的变量及常量.函数paste的一般使用格式为: paste(..., ...

  2. R语言观察日志(part2)--preProcess函数

    学习笔记,仅供参考,有错必纠,按需更新 PS:大量参考R的帮助文档,照搬英文不翻译 preProcess函数 所在包:caret 描述 Pre-processing transformation (c ...

  3. R语言观察日志(part1)--subset函数

    学习笔记,仅供参考,有错必纠,按需更新 PS:大量参考R的帮助文档,照搬英文不翻译 subset函数 所在包:base 描述 Return subsets of vectors, matrices o ...

  4. R语言观察日志(part20)--包的组件之R代码

    学习笔记,仅供参考,有错必纠 文章目录 R代码 R代码的工作流程 组织函数 代码风格 对象名称 空格 余下的请看R语言观察日志(part16)--Google's R Style Guide 顶层代码 ...

  5. R语言观察日志(part23)--bibliometrix包

    R语言文献计量分析笔记 参考文献:如何用 R 快速了解科研领域?; BiblioShiny使用介绍; R语言快速实现文献计量分析 GitHub:https://github.com/massimoar ...

  6. R语言观察日志(part16)--Google‘s R Style Guide

    学习笔记,仅供参考 自翻,有错必究 文章目录 Google's R Style Guide summary R语言风格 R语言规则 符号和命名 文件名 标识符 每行长度(注意) 缩进 空格 花括号 被 ...

  7. R语言观察日志(part15)--R的缺点

    学习笔记,仅供参考,有错必纠 摘自:基于R语言的机器学习 R的缺点

  8. R语言观察日志(part12)--关于.Rprofile文件

    学习笔记,仅供参考,有错必纠 关于.Rprofile文件 帮助文档 除非--no-init-file被给出,R会搜索一个用户配置文件,一个包含R代码的文件.这个文件的路径可以由R_PROFILE_US ...

  9. R语言观察日志(part8)-RMarkdown之其他语言

    学习笔记,仅供参考,有错必纠 参考自:官方文档rmarkdown;R Markdown中配置python R Markdwon 其他语言 我们的.Rmd文件同样可以执行除了R以外的语言,比如: Pyt ...

最新文章

  1. mysql怎么用命令行导出sql文件_使用mysql命令行导出sql_MySQL
  2. dedecms 如何调用多个不同栏目的文章_SEO排名,同一篇文章,在多个栏目,如何处理?...
  3. 腾讯云副总裁邹贤能:将陆续开源四大核心技术
  4. jsf服务_使用JSF的面向服务的UI
  5. glassfish默认密码_在MySQL上使用含盐密码的GlassFish JDBC安全性
  6. 博主推荐【文件Hash校验工具V1.0 -免费版】
  7. editview只输入英文_搜狗输入法Mac版更新:适配苹果M1处理器
  8. 500 OOPS: cannot change directory”解决方法
  9. Nginx+Memcached+Tomcat集群配置
  10. java加解密算法概述
  11. Mongo 多语言模糊匹配
  12. 毕向东java视频js_js foteach 传智播客毕向东老师 新版JAVASE基础学习视频教程 ...(8)...
  13. 微信小程序云开发答题小程序源代码(实现在线pk)
  14. Ubuntu 20.04 双系统安装过程(新手)
  15. 迅捷路由器造成计算机无法上网,迅捷(FAST)300M无线路由器设置后不能上网的解决方法...
  16. PLC通讯实现-C#访问OpcUa实现读写PLC(十)
  17. Unity 2d 机器人的来回巡游
  18. Ubuntu Server上如何安装Gi
  19. PTA拼题A2023跨年挑战赛
  20. CNN | 06Cifar-10分类

热门文章

  1. C++ 线程池的思想
  2. C++编程思想:继承与虚函数以及多态
  3. OpenGL:carmer
  4. 螺丝上的十字磨没了_十字起子和无限下拉菜单
  5. 竞价点击软件_百度的关键词竞价广告:百度竞价广告关键词怎么设置?28法则是什么?...
  6. android 动态调用apk,通过反射动态加载未安装apk
  7. php添加上传附件,phpweb招聘模块job上传简历附件的修改办法
  8. java xfire webservice 异步_[Java教程]Java中使用webservice,简化开发(xfire的webservice)...
  9. 自定义按键_DNF手游:策划宣布新增自定义按键布局,期待手游新版本的到来
  10. myeclipse去除jsp校验错误