R语言学习笔记11-读取csv-xlsx-txt-json-pdf-lua格式文件
创始人
2024-12-28 11:37:00
0

R语言学习笔记11-读取csv-xlsx-txt-json-pdf-lua格式文件

  • 读取csv
    • 使用base的 read.csv 函数
    • 使用 readr 包的 read_csv 函数
  • 读取xlsx
    • 使用 xlsx 包的 read.xlsx 函数
    • 使用 readxl 包的 read_excel 函数
  • 读取txt
    • 使用base的文件读取函数 readLines
    • 使用 readr 包的 read_lines 函数
  • 读取json
    • 使用 jsonlite 包读取 JSON 文件
  • 读取pdf
    • 使用 pdftools 包读取pdf文件
  • 读取lua
    • 使用基本的文件读取函数 readLines

读取csv

使用base的 read.csv 函数

read.csv 是R语言中用于读取CSV文件的基本函数,它会将CSV文件读取为一个数据框对象

假设有一个名为 data.csv 的CSV文件,内容如下:

id,name,age 1,John,25 2,Jane,30 3,Bob,28 

读取:

# 读取 CSV 文件 data <- read.csv("data.csv")  # 显示读取的数据 print(data) 

输出:

  id name age 1  1 John  25 2  2 Jane  30 3  3  Bob  28 

使用 readr 包的 read_csv 函数

readr 包提供了更为快速和灵活的CSV读取函数 read_csv 特别适合大型数据集的处理

# 如果未安装readr包,需要先安装 # install.packages("readr")  # 加载 readr 包 library(readr)  # 使用 read_csv 函数读取 CSV 文件 data <- read_csv("data.csv")  # 显示读取的数据 print(data) 

读取xlsx

使用 xlsx 包的 read.xlsx 函数

xlsx 包提供了一种读取Excel文件的方法,适用于较旧版本的Excel文件(.xlsx格式)

假设有一个名为 data.xlsx 的Excel文件,内容如下:

idname
1zhangsan
2lisi
3wangwu

读取:

# 如果未安装xlsx包,需要先安装 # install.packages("xlsx")  # 加载xlsx包 library(xlsx)  # 读取 Excel 文件 data <- read.xlsx("data.xlsx", sheetIndex = 1)  # 显示读取的数据 print(data) 

输出:

  id name 1  1 zhangsan 2  2 lisi 3  3  wangwu 

使用 readxl 包的 read_excel 函数

readxl 包提供了更为现代和高效的方法来读取Excel文件,支持更多的Excel特性 适合处理各种Excel文件格式和大型数据集

# 如果未安装readxl包,需要先安装 # install.packages("readxl")  # 加载readxl包 library(readxl)  # 读取 Excel 文件 data <- read_excel("data.xlsx")  # 显示读取的数据 print(data) 

读取txt

使用base的文件读取函数 readLines

readLines 函数是R语言中用于逐行读取文本文件内容的基本函数

假设有一个名为 data.txt 的文本文件,内容如下:

1 John 25 2 Jane 30 3 Bob 28 

读取:

# 读取文本文件 lines <- readLines("data.txt")  # 显示读取的内容 print(lines) 

输出:

[1] "1 John 25" "2 Jane 30" "3 Bob 28" 

使用 readr 包的 read_lines 函数

如果需要更为高效地读取文本文件,特别是处理大型文本文件时,可使用 readr 包中的 read_lines 函数

# 如果未安装readr包,需要先安装 # install.packages("readr")  # 加载readr包 library(readr)  # 读取文本文件 data <- read_lines("data.txt")  # 显示读取的内容 print(data) 

读取json

使用 jsonlite 包读取 JSON 文件

jsonlite 包提供了在R中读取和处理JSON数据的功能。可使用其中的函数 fromJSON
来将JSON文件读取为R中的数据结构,如列表或数据框

假设有一个名为 data.json 的JSON文件,内容如下:

[   {"id": 1, "name": "John", "age": 25},   {"id": 2, "name": "Jane", "age": 30},   {"id": 3, "name": "Bob", "age": 28} ] 

读取:

# 如果未安装jsonlite包,需要先安装 # install.packages("jsonlite")  # 加载jsonlite包 library(jsonlite)  # 读取 JSON 文件 data <- fromJSON("data.json")  # 显示读取的数据 print(data) 

输出:

  id name age 1  1 John  25 2  2 Jane  30 3  3  Bob  28 

读取pdf

使用 pdftools 包读取pdf文件

pdftools 包支持读取pdf文件的内容并进行进一步处理,例如提取文本或分析页面结构

假设有一个名为 document.pdf 的PDF文件,内容为一些文本页面:

# 如果未安装pdftools包,需要先安装 # install.packages("pdftools")  # 加载pdftools包 library(pdftools)  # 读取PDF文件 pdf_content <- pdf_text("document.pdf")  # 显示读取的内容(假设显示第一页) cat(pdf_content[[1]]) 

读取lua

使用基本的文件读取函数 readLines

可使用R语言的 readLines 函数来逐行读取Lua脚本文件的内容

假设有一个名为 script.lua 的Lua脚本文件,内容如下:

function factorial(n)     if n <= 1 then         return 1     else         return n * factorial(n - 1)     end end  print(factorial(5)) 

读取:

# 读取Lua脚本文件 lines <- readLines("script.lua")  # 显示读取的内容 print(lines) 

输出:

[1] "function factorial(n)"                            [2] "    if n <= 1 then"                               [3] "        return 1"                                 [4] "    else"                                         [5] "        return n * factorial(n - 1)"               [6] "    end"                                          [7] "end"                                              [8] ""                                                 [9] "print(factorial(5))" 

相关内容

热门资讯

八分钟攻略!中至窝龙必赢攻略,... 八分钟攻略!中至窝龙必赢攻略,aaPOKER都是有挂,教你攻略(有挂详情);1)中至窝龙必赢攻略辅助...
四分钟攻略!中至吉安王炸输赢,... 四分钟攻略!中至吉安王炸输赢,鱼扑克app俱乐部真是真的有挂,规律教程(有挂详情)1、全新机制【中至...
2分钟了解!宁波竞技馆有挂吗,... 2分钟了解!宁波竞技馆有挂吗,wepOke总是存在有挂,揭秘教程(有挂ai代打);1、宁波竞技馆有挂...
八分钟辅助挂!喜扣打筒子辅助器... 八分钟辅助挂!喜扣打筒子辅助器,聚星扑克德州真是是有挂,辅助教程(有挂技巧);1、喜扣打筒子辅助器系...
八分钟发现!正版欢乐达人辅助工... 八分钟发现!正版欢乐达人辅助工具,鱼扑克app俱乐部都是是有挂,黑科技教程(有挂解说)1)正版欢乐达...
八分钟发现!山西大唐麻将输赢设... 八分钟发现!山西大唐麻将输赢设置,聚星扑克果然有挂,wepoke教程(有挂黑科技)1、上手简单,内置...
十分钟发现!哈灵辅助神器ios... 十分钟发现!哈灵辅助神器ios,wepokE都是真的是有挂,教你攻略(有挂解说)进入游戏-大厅左侧-...
4分钟辅助!皇豪互娱辅助器下载... 4分钟辅助!皇豪互娱辅助器下载,扑克世界原来真的是有挂,AA德州教程(有挂解说)1、超多福利:超高返...
8分钟普及!揭秘哈局十三张赢牌... 8分钟普及!揭秘哈局十三张赢牌秘诀,wEpOke真是是真的有挂,细节方法(有挂普及);1)揭秘哈局十...
3分钟辅助!微信上的广东雀神麻... 3分钟辅助!微信上的广东雀神麻将有挂吗,wepoKE真是是真的有挂,微扑克教程(有挂辅助);1、这是...