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))" 

相关内容

热门资讯

十分钟了解!丰城双剑摸奖秘籍!... 自定义新版丰城双剑摸奖秘籍系统规律,只需要输入自己想要的开挂功能,一键便可以生成出丰城双剑摸奖秘籍专...
NFT 智能合约实战-快速开始... 文章目录NFT 智能合约实战-快速开始(1)NFT发展历史国内NFT市场国内NFT合规性如何获得NF...
八分钟体悟!心悦手机麻将辅牌器... 八分钟体悟!心悦手机麻将辅牌器!(透视)外挂透视辅助软件(2024已更新)-哔哩哔哩;1、不需要AI...
五分钟体悟!边锋老友棋牌是有挂... 五分钟体悟!边锋老友棋牌是有挂!(透视)外挂辅助器开挂(2023已更新)-哔哩哔哩是一款可以让一直输...
7分钟掌握!乐乐上海麻将有挂的... 7分钟掌握!乐乐上海麻将有挂的!(透视)外挂开挂辅助开挂(2022已更新)-哔哩哔哩;一、乐乐上海麻...
三分钟了解!闲逸斗地主房主可以... 三分钟了解!闲逸斗地主房主可以调胜率!(透视)外挂透视辅助插件(2024已更新)-哔哩哔哩;AI智能...
八分钟了解!心悦踢坑辅助器!(... 八分钟了解!心悦踢坑辅助器!(透视)外挂开挂辅助器神器(2021已更新)-哔哩哔哩;八分钟了解!心悦...
两分钟体悟!科乐斗地主有挂!(... 两分钟体悟!科乐斗地主有挂!(透视)外挂辅助器软件(2022已更新)-哔哩哔哩是一款可以让一直输的玩...
十分钟掌握!多乐保皇辅助器io... 十分钟掌握!多乐保皇辅助器ios版本!(透视)外挂辅助器神器(2020已更新)-哔哩哔哩;十分钟掌握...
5分钟体悟!微乐小程序免费黑科... 5分钟体悟!微乐小程序免费黑科技!(透视)外挂辅助器插件(2021已更新)-哔哩哔哩;;AI辅助机器...