R语言的基础命令及实例操作

> T & F

1\] FALSE \> T \& T \[1\] TRUE \> T \| F \[1\] TRUE \> F \| F \[1\] FALSE \> a \<- c(T,F,T) \> b \<- c(F,F,T) \> a \& b \[1\] FALSE FALSE TRUE \> a \| b \[1\] TRUE FALSE TRUE 在 **R** 中,大小写是敏感的,也就是说 A 和 a 是不同的对象。 1. **对象命名规则** : * 对象名不能以数字开头,但数字可以出现在对象名的中间或结尾。例如,a1 是合法的,但 1a 不是。 * 在命名对象时,建议使用点(.)作为分隔符,这样可以提高可读性。例如:anova.result1。 2. **示例:创建一个向量** : * 你可以通过如下命令创建一个向量: a \<- c(10, 15, 21, 18) 这个向量 a 包含了 4 个元素,数据类型为数值型(numeric),长度为 4。 3. **命名注意事项** : * 在命名对象时,要避免与 R 中的保留名称(关键字)冲突。以下是一些保留名称示例: * NA:缺失值 * NaN:非数值 * pi:圆周率常数 * LETTERS:包含所有大写字母的字符向量 * letters:包含所有小写字母的字符向量 * month.abb:月份的缩写 * month.name:月份的全名 避免将对象命名为这些保留名称,以免与 R 语言的内置功能冲突。 在 **R** 中,有几种基本的数据类型: 1. **数值型(Numeric)** : * 用于存储数字,包括整数和浮动点数。 * 示例:100, 0, -4.335 2. **字符型(Character)** : * 用于存储文本数据,通常用双引号或单引号括起来。 * 示例:"China" 3. **逻辑型(Logical)** : * 用于存储逻辑值,即 TRUE 或 FALSE。 * 示例:TRUE, FALSE 4. **因子型(Factor)** : * 用于表示分类数据,也就是不同类别或水平的变量。因子型变量可以用来表示类别,如性别、地区等。 * 示例:factor(c("Male", "Female", "Female", "Male")) * 可以用来输入患者的信息 5. **复数型(Complex)** : * 用于存储复数数据,形式为 a + bi。 * 示例:2 + 3i * **向量(Vector)** : * 向量是同一类型元素的集合。向量是R中最基本的数据结构,可以包含数值、字符、逻辑值等。 * 示例: v \<- c(1, 2, 3, 4) * **数组(Array)** : * 数组是多维的数据表,可以是任意维度(维数 k)。数组的元素必须是相同的数据类型。 * 示例:创建一个二维数组 arr \<- array(1:6, dim = c(2, 3)) * **矩阵(Matrix)** : * 矩阵是数组的一个特例,具有 2 个维度(即行和列)。矩阵中的元素必须是同一数据类型。 * 示例: mat \<- matrix(1:6, nrow = 2, ncol = 3) * **列表(List)** : * 列表是一种可以包含不同类型元素的数据结构,可以包含向量、矩阵、数据框,甚至其他列表。与向量不同,列表中的元素可以是不同类型。 * 示例: lst \<- list(a = 1, b = "text", c = TRUE) * **数据框(DataFrame)** : * 数据框是由一个或多个向量或因子组成的二维结构,类似于数据库中的表格。数据框中的每列可以是不同的数据类型,但每列必须是等长的。 * 示例: df \<- data.frame(Name = c("Alice", "Bob"), Age = c(25, 30)) 索引: \> count = c("a","b","c") \> count \[1\] "a" "b" "c" \> count\[1

1\] "a" \> count\[2

1\] "b" 转置: \> matrix.x \<- matrix(1:12,nrow=3,byrow=T) \> t(matrix.x) \[,1\] \[,2\] \[,3

1,\] 1 5 9 \[2,\] 2 6 10 \[3,\] 3 7 11 \[4,\] 4 8 12 \> 取行和列: \> df \<- data.frame(Name = c("Alice", "Bob"), Age = c(25, 30)) \> df Name Age 1 Alice 25 2 Bob 30 \> df\[2,

Name Age
2 Bob 30
> df[,2]

1\] 25 30 \> df\[2,1

1\] "Bob" \> df$Name \[1\] "Alice" "Bob" 对象类型判断: \> class(count) \[1\] "character" \> class(df) \[1\] "data.frame" \> class(x) \[1\] "integer" 对象类型转换: \> gender = c('male','female','male') \> gender \[1\] "male" "female" "male" \> class(gender) \[1\] "character" \> as.factor(gender) \[1\] male female male Levels: female male 外部数据读取: **1. 读取 .txt 和 .csv 文件** **read.table() 函数:** * read.table() 是 **R** 中最常用的函数之一,用于读取由空格或制表符(Tab)分隔的文本文件。它的默认分隔符是 **空格** 或 **制表符** (Tab),但可以通过参数 sep 来指定其他分隔符。 示例: data \<- read.table("data.txt", header = TRUE, sep = "\\t") * header = TRUE:表示文件的第一行是列名。 * sep = "\\t":表示数据之间是由制表符(Tab)分隔的。 读取的结果会存储为数据框(data frame),data 变量就包含了从文件中读取的数据。 **read.csv() 函数:** * read.csv() 是 **read.table()** 的一种专门用于读取 CSV(逗号分隔值)文件的简化版本。它的默认分隔符是 **逗号** (,)。 示例: data \<- read.csv("data.csv", header = TRUE) * header = TRUE:表示文件的第一行是列名。 读取的结果会同样存储为数据框。 **2. 其他文件格式的读取** R 也可以通过一些专门的程序包来读取其他格式的数据文件。例如: * **Excel 文件** :可以使用 readxl 或 openxlsx 包来读取 .xlsx 或 .xls 文件。 library(readxl) data \<- read_excel("data.xlsx") * **SAS 文件** :可以使用 haven 包来读取 .sas7bdat 文件。 library(haven) data \<- read_sas("data.sas7bdat") * **DBF 文件** :可以使用 foreign 包来读取 DBF 格式文件。 library(foreign) data \<- read.dbf("data.dbf") * **Matlab 文件** :使用 R.matlab 包来读取 .mat 文件。 library(R.matlab) data \<- readMat("data.mat") * **SPSS 文件** :使用 haven 包读取 .sav 文件。 library(haven) data \<- read_spss("data.sav") * **Minitab 文件** :可以使用 foreign 包来读取 .mtw 文件。 library(foreign) data \<- read.minitab("data.mtw") ![](https://i-blog.csdnimg.cn/direct/29249dfeef234f37a303e7fc4c3060d5.png) \> data \<- read.table("C:/Users/admin/Desktop/BMI.txt", header = TRUE, sep = "\\t", stringsAsFactors = FALSE) \> data height weight 1 1.75 60 2 1.80 72 3 1.65 67 4 1.90 50 5 1.74 95 6 1.91 72 \> class(data) \[1\] "data.frame" 查看当前的工作路径和修改工作路径: \> getwd() \[1\] "C:/Users/admin/Documents" \> setwd("C:/Users/admin/Desktop") 两个点代表返回上级目录,一个点代表当前目录: \> setwd("../") \> getwd() \[1\] "C:/Users/admin" 实例1: ![](https://i-blog.csdnimg.cn/direct/a3ce5c5987dc4e99894d160a0a323d68.png) ![](https://i-blog.csdnimg.cn/direct/18e8ebb73fca41529d705453871ad929.png) 实例2: 研究对象:肺癌,乳腺癌,膀胱癌,肝癌 研究方法:转录组测序,找到共同的差异基因 已有数据:四种肿瘤各自的差异基因 具体步骤: 1.读入数据-read.table() 2.取得交集-intersect() 3.频数统计,找到更多热点基因-table() 4.韦恩图可视化-venn.diagram() ![](https://i-blog.csdnimg.cn/direct/2e7073f666d644988e4cb5e112178414.png) ![](https://i-blog.csdnimg.cn/direct/bc1d230d298e441ca2c088a4b308dcac.png) Label.col和cat.col我没写可以自己加 ![](https://i-blog.csdnimg.cn/direct/93880ba37c2b4d52a8b5f0d59bfd4dce.png)

相关推荐
笑口常开xpr21 分钟前
C 语 言 - - - 文 件 操 作
c语言·开发语言
种时光的人28 分钟前
【Java多线程】计时器Timer/ScheduledExecutorService的使用
java·开发语言
旺代28 分钟前
CSS 预处理器 Sass
开发语言·sass
计算机毕设指导61 小时前
基于Springboot旅游网站系统【附源码】
java·开发语言·spring boot·后端·mysql·spring·旅游
code_shenbing1 小时前
python常用科学计算库及使用示例
开发语言·python
Wabi_sabi_x1 小时前
C++设计模式:面向对象的八大设计原则之二
开发语言·c++·设计模式
●^●1 小时前
Python 部分内置函数及其用法详解
开发语言·python
꧁坚持很酷꧂2 小时前
C++的基础知识(引用、类、封装、继承、多态、函数重载)
开发语言·c++
sunly_2 小时前
Flutter:组件10、倒计时
开发语言·javascript·flutter
a181001_2 小时前
python下载
开发语言·后端·python·青少年编程