菜鸟教程R语言一二章阅读笔记

菜鸟教程R语言一二章阅读笔记

一.R语言基础教程

R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。侧重于数学工作者

R语言特点如下:

R 语言环境软件属于 GNU 开源软件,兼容性好、使用免费

语法十分有利于复杂的数学运算

数据类型丰富,包括向量、矩阵、数据集等常用数据结构

代码风格好,可读性强

EG 程序 HELLO WORLD

R 复制代码
myString <- "Hello, World!"
print ( myString )

R 语言文件后缀为 .R,可以使用命令行工具 Rscript 来执行 R 脚本文件

R语言官方网站:https://cran.r-project.org/

二.R语言基础语法

如Hello world 将字符串"hello world"赋值给mystring变量然后用print()输出'

1.变量

变量名称由字母 数字 点号 下划线组成

R语言可以用= <- (左箭头) ->(右箭头)给予赋值

var.1 = c(0,1,2,3)
var.2 <- c("learn","R")

c(TRUE,1) -> var.3

产看已经定义的变量用 Is()函数

print(ls())

删除变量用Rm()函数

rm(var.3)

2.交互式编程

在命令行中执行 R 命令就可以进入交互式的编程窗口,在>后面输入代码即可

交互式命令可以通过输入 q() 来退出

3.文件脚本

R 语言文件后缀为 .R 可以创建脚本后在命令行使用Rscript

复制代码
myString <- "Pollution"

print ( myString )

输出

R 复制代码
[1] "Pollution"

4.输入输出

print() 是 R 语言的输出函数。

R 语言与 node.js 和 Python 一样,是解释型的语言,所以我们往往可以像使用命令行一样使用 R 语言。

对于字符串的输出需要在()加入 ""

  1. cat() 函数

cat()函数支持直接输出结果到文件

R 复制代码
 cat("RUNOOB", file="/Users/runoob/runoob-test/r_test.txt")

会把把 "RUNOOB" 变量输出到 "/Users/runoob/runoob-test/r_test.txt" 文件中去。

6.Sink 函数

把控制台输出的文字输出到文件中去,但会清除原有的文件内容

R 复制代码
sink("/Users/runoob/runoob-test/r_test.txt")

7.R中的文件读取函数 如readlines函数

EG 读取

R 复制代码
readLines("/Users/runoob/runoob-test/r_test.txt")

输出

R 复制代码
[1] "RUNOOBGOOGLE"

注! 所读取的文件必须每行结束有换行符 不然报错

8.工作目录

对于文件操作,我们需要设置文件的路径,R 语言可以通过以下两个函数来获取和设置当前的工作目录:

getwd() : 获取当前工作目录

setwd() : 设置当前工作目录

EG 工作目录

R 复制代码
# 当前工作目录
print(getwd())

# 设置当前工作目录
setwd("/Users/runoob/runoob-test2")

# 查看当前工作目录
print(getwd())

wd() : 设置当前工作目录

EG 工作目录

R 复制代码
# 当前工作目录
print(getwd())

# 设置当前工作目录
setwd("/Users/runoob/runoob-test2")

# 查看当前工作目录
print(getwd())
相关推荐
1candobetter34 分钟前
JAVA后端开发——用 Spring Boot 实现定时任务
java·开发语言·spring boot
啊阿狸不会拉杆1 小时前
《Java 程序设计》第 8 章 - Java 常用核心类详解
java·开发语言·python·算法·intellij-idea
小白学大数据1 小时前
Python + Requests库爬取动态Ajax分页数据
开发语言·python·ajax·okhttp
2501_920047031 小时前
python-内存管理
开发语言·jvm·python
_Kayo_1 小时前
VUE2 学习笔记11 脚手架
vue.js·笔记·学习
溯源0062 小时前
Docker学习相关视频笔记(一)
笔记·学习·docker
芜青2 小时前
JavaScript手录09-内置对象【String对象】
开发语言·javascript·ecmascript
钮钴禄·爱因斯晨2 小时前
Java 集合进阶:从 Collection 接口到迭代器的实战指南
java·开发语言
mrbone112 小时前
C++-关于协程的一些思考
开发语言·数据库·c++·c++20·协程·异步·coroutines
zgc12453672 小时前
Linux学习--C语言(指针3)
c语言·开发语言·学习