当前位置: 首页 > news >正文

R语言学习笔记-1

1. 基础操作和函数

  • 清空环境rm(list = ls()) 用于清空当前的R环境。

  • 打印输出print("Hello, world") 用于输出文本到控制台。

  • 查看已安装包和加载包

    • search():查看当前加载的包。
    • install.packages("package_name"):安装包。
    • library(package_name):加载已安装的包。
    • update.packages("package_name"):更新包。
  • 帮助文档

    • help.start():打开帮助文档。
    • help(function_name)?function_name:查看函数的帮助文档。
    • example("function_name"):查看函数的示例。
    • help.search("search_term")??search_term:搜索帮助文档中的关键词。

2. 基本计算

  • 常见操作:加 (+)、减 (-)、乘 (*)、除 (/)、幂运算 (^)、比较 (>, <, >=, ==, !=)。

    • 示例:
      1 + 1
      2 * 3
      4 / 2
      2^3
      log2(16)
      sqrt(25)  # 计算平方根
      exp(1)  # e的1次方
      pi  # 圆周率
      round(pi, digits = 2)  # 保留2位小数
      
  • 变量赋值:可以使用 =, <--> 进行赋值。

    • 示例:
      a = 3 + 5
      A <- 3 + 5
      a <- 3 + 7
      a
      b <- sqrt(36)
      

3. 逻辑判断

  • 逻辑运算符&(与),|(或),==(等于),!=(不等于),>(大于),<(小于)。
    • 示例:
      2 > 5
      5 >= 3
      6 < 7
      5 != 6
      3 * 3 == 3^2  # 等式判断
      (3 * 3 == 3^2) & (5 > 4)  # 逻辑与
      (3 * 3 == 3^2) | (5 > 4)  # 逻辑或
      

4. 数据类型与常量

  • 数据类型:R中常见的数据类型包括数值、字符、逻辑值和因子。

    • class(variable):查看变量的类型。
    • 示例:
      class(1603)      # "numeric"
      class("1603")    # "character"
      class(TRUE)      # "logical"
      class(FALSE)     # "logical"
      class("shanghai") # "character"
      
  • 常量与变量

    • 常量是固定的值,如 2"324"
    • 变量是可赋值的,如:
      afdfd = 324
      

5. 向量和数据结构

在这里插入图片描述
在这里插入图片描述

  • 向量:向量是R中最基本的数据类型,可以存储多个元素。
    • 示例:
      score = c(98, 96, 98)  # 数字向量
      names(score) = c("yuwen", "shuxue", "yingyu")  # 给向量元素命名
      

在这里插入图片描述

  • 矩阵:矩阵是由相同数据类型元素组成的二维数组。
    • 示例:
      y <- matrix(1:20, nrow = 5, ncol = 4)  # 创建一个5行4列的矩阵
      mymatrix <- matrix(c(1, 26, 24, 68), nrow = 2, ncol = 2, byrow = TRUE)
      

在这里插入图片描述

  • 数组:数组是多维矩阵,可以存储多个矩阵。

    • 示例:
      z <- array(1:24, c(2, 3, 4), dimnames = list(c("A1", "A2"), c("B1", "B2", "B3"), c("C1", "C2", "C3", "C4")))
      
  • 数据框(Data Frame):数据框是R中非常重要的数据结构,可以存储不同类型的数据。每列可以是不同的类型。

    • 示例:
      patientID <- c(1, 2, 3, 4)
      age <- c(25, 34, 28, 52)
      diabetes <- c("Type1", "Type2", "Type1", "Type1")
      status <- c("Poor", "Improved", "Excellent", "Poor")
      patientdata <- data.frame(patientID, age, diabetes, status)
      

在这里插入图片描述

  • 因子:因子用于处理分类数据。
    • 示例:
      diabetes <- factor(c("Type1", "Type2", "Type1", "Type1"))
      
      在这里插入图片描述

在这里插入图片描述

  • 列表(List):列表可以存储不同类型的元素,可以包含向量、矩阵、数据框等。
    • 示例:
      mylist <- list(title = "My First List", ages = c(25, 26, 18, 39), matrix(1:10, nrow = 5))
      

在这里插入图片描述

6. 统计分析与可视化

  • 计算均值与标准差

    • 示例:
      mean(weight)  # 计算均值
      sd(weight)    # 计算标准差
      
  • 相关性分析

    • 示例:
      cor(age, weight)  # 计算年龄与体重之间的相关性
      
  • 绘图

    • 示例:
      plot(age, weight)  # 散点图
      hist(x)             # 绘制直方图
      

总结:

  • R语言的数据类型包括向量、矩阵、数组、数据框、因子和列表。数据框(Data Frame)是R中最常用的数据结构。
  • 基础操作包括算术运算、逻辑判断、数据类型操作等。
  • 统计与可视化:R提供了丰富的统计分析功能,如均值、标准差、相关性分析和绘图功能。

相关文章:

R语言学习笔记-1

1. 基础操作和函数 清空环境&#xff1a;rm(list ls()) 用于清空当前的R环境。 打印输出&#xff1a;print("Hello, world") 用于输出文本到控制台。 查看已安装包和加载包&#xff1a; search()&#xff1a;查看当前加载的包。install.packages("package_na…...

我在广州学 Mysql 系列之 数据“表”的基本操作

ℹ️大家好&#xff0c;我是&#x1f606;练小杰&#xff0c;今天主要讲得是Mysql数据表的基本操作内容~~ 昨天讲了“Mysql 数据“库“的基本操作”~~ 想要了解更多&#x1f236;️MYSQL 数据库的命令行总结&#xff01;&#xff01;&#xff01; “真相永远只有一个”——工藤…...

auto-gptq安装以及不适配软硬件环境可能出现的问题及解决方式

目录 1、auto-gptq是什么&#xff1f;2、auto-gptq安装3、auto-gptq不正确安装可能会出现的问题&#xff08;1&#xff09;爆出&#xff1a;CUDA extension not installed.&#xff08;2&#xff09;没有报错但是推理速度超级慢 1、auto-gptq是什么&#xff1f; Auto-GPTQ 是一…...

【R语言】基础知识

一、对象与变量 R语言中的所有事物都是对象&#xff0c;如向量、列表、函数&#xff0c;变量、甚至环境等。它的所有代码都是基于对象object的操作&#xff0c;变量只是调用对象的手段。 1、对象 在R语言中&#xff0c;对计算机内存的访问是通过对象实现的。 # 字符型向量 …...

【一本通】虫洞

【一本通】虫洞 C语言代码C代码JAVA代码 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; John在他的农场中闲逛时发现了许多虫洞。虫洞可以看作一条十分奇特的有向边&#xff0c;并可以使你返回到过去的一个时刻&#xff08;相对你进入虫洞之…...

python爬虫--小白篇【爬虫实践】

一、前言 1.1、王者荣耀皮肤爬虫 根据王者荣耀链接&#xff0c;将王者荣耀的全部英雄的全部皮肤图片爬取保存到本地。经过分析得到任务的三个步骤&#xff1a; 根据首页全部英雄列表连接获取全部英雄的名称hero_name以及对应的hero_id&#xff1b;根据单个英雄的hero_name和h…...

Unity背包道具拖拽(极简版实现)

&#xff08;感觉Csdn代码页面可以再大一点或者加个放大功能 不然得划着看不太舒服&#xff09; 1.关键接口&#xff0c;三个拖拽相关的 2.关键参数&#xff0c;PointerEventData 一直没仔细看过&#xff0c;其实有包含鼠标相关的很多参数&#xff0c;鼠标点击次数&#xff…...

spark读取普通文件

spark读取普通文件 txt文件 """ 将一行数据当做一个字段&#xff0c;需要自己切割 字段名称为value 表结构 可以从sql中搞 """ df spark.read.text("../../data/wordcount/input/data.txt") df spark.read.format("text"…...

MySQL SQL语句性能优化

MySQL SQL语句性能优化指南 一、查询设计优化1. 避免 SELECT *2. 使用 WHERE 进行条件过滤3. 避免在索引列上使用函数和表达式4. 使用 LIMIT 限制返回行数5. 避免使用子查询6. 优化 JOIN 操作7. 避免全表扫描 二、索引优化1. 使用合适的索引2. 覆盖索引3. 索引选择性4. 多列索引…...

【蓝桥杯每日一题】技能升级

技能升级 2024-12-10 蓝桥杯每日一题 技能升级 二分 题目大意 一个角色有 N 种可以增加攻击力的技能&#xff0c;对于第 i 个技能首次升级可以提升 A i A_i Ai​ 点攻击力&#xff0c;随后的每次升级增加的攻击力都会减少 B i B_i Bi​ 。升级 ⌈ A i B i ⌉ \lceil \frac{A…...

css 实现在一条线上流动小物体(offset-path)

直接贴代码,留几个参考网址给大家 【SVG】路径<Path>标签详解,一次搞懂所有命令参数 探秘神奇的运动路径动画 Motion Path <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport&quo…...

探索 Robyn 框架 —— 下一代高性能 Web 框架

技术博客&#xff1a;探索 Robyn 框架 —— 下一代高性能 Web 框架 什么是 Robyn&#xff1f; Robyn 是一个用 Rust 编写的高性能 Web 框架&#xff0c;旨在通过极简设计和高效并发处理&#xff0c;帮助开发者快速构建可扩展的现代 Web 应用。得益于 Rust 的内存安全性和性能…...

STL容器-map P3613【深基15.例2】寄包柜 普及-

题目来源&#xff1a;洛谷题库 文章目录 map例题map知识点map使用注意&#xff1a;map的常用用法 map例题 P3613【深基15.例2】寄包柜 普及- 题意 根据数据插入/查询 思路 map键值对可以根据柜子编号查找物品&#xff0c;但是柜子又有很多个&#xff0c;考虑数组或者map数组…...

【MySQL 进阶之路】了解 性能优化 与 设计原则

1.B树的优势 “矮胖”结构&#xff1a; 矮&#xff1a;B树的每个节点存储更多的关键字&#xff0c;从而减少了树的层级&#xff08;最多三层&#xff09;&#xff0c;减少了磁盘I/O操作&#xff0c;提高了查询效率。胖&#xff1a;叶子节点存储实际的数据&#xff0c;并使用双…...

MySQL之数据库三大范式

一、什么是范式&#xff1f; 范式是数据库遵循设计时遵循的一种规范&#xff0c;不同的规范要求遵循不同的范式。 &#xff08;范式是具有最小冗余的表结构&#xff09; 范式可以 提高数据的一致性和 减少数据冗余和 更新异常的问题 数据库有六种范式&#xff08;1NF/2NF/3NF…...

[大数据]Hudi

G:\Bigdata\17.hudi\大数据技术之数据湖Hudi 第1章 Hudi概述 1.1 Hudi简介 Apache Hudi(Hadoop Upserts Delete and Incremental)是下一代流数据湖平台。Apache Hudi将核心仓库和数据库功能直接引入数据湖。Hudi提供了表、事务、高效的upserts/delete、高级索引、流摄取服…...

jenkins harbor安装

Harbor是一个企业级Docker镜像仓库‌。 文章目录 1. 什么是Docker私有仓库2. Docker有哪些私有仓库3. Harbor简介4. Harbor安装 1. 什么是Docker私有仓库 Docker私有仓库是用于存储和管理Docker镜像的私有存储库。Docker默认会有一个公共的仓库Docker Hub&#xff0c;而与Dock…...

JavaScript 高级特性与 ES6 新特性:正则表达式的深度探索

在现代 JavaScript 开发中&#xff0c;正则表达式&#xff08;Regular Expressions&#xff09;和高级特性、ES6 新特性的结合使用&#xff0c;能够极大地提升代码的简洁性、可读性和功能性。本文将深入探讨 JavaScript 中的正则表达式及其在高级特性和 ES6 新特性中的应用&…...

正则表达式——参考视频B站《奇乐编程学院》

智能指针 一、背景&#x1f388;1.1. 模式匹配&#x1f388;1.2. 文本替换&#x1f388;1.3. 数据验证&#x1f388;1.4. 信息提取&#x1f388;1.5. 拆分字符串&#x1f388;1.6. 高级搜索功能 二、原料2.1 参考视频2.2 验证网址 三、用法3.1 限定符3.1.1 ?3.1.2 *3.1.3 3.1.…...

【FFmpeg】FFmpeg 内存结构 ⑥ ( 搭建开发环境 | AVPacket 创建与释放代码分析 | AVPacket 内存使用注意事项 )

文章目录 一、搭建开发环境1、开发环境搭建参考2、项目搭建 二、AVPacket 创建与释放代码分析1、AVPacket 创建与释放代码2、Qt 单步调试方法3、单步调试 - 分析 AVPacket 创建与销毁代码 三、AVPacket 内存使用注意事项1、谨慎使用 av_init_packet 函数2、av_init_packet 函数…...

seo优化推广流程中如何进行网站内链优化

SEO优化推广流程中如何进行网站内链优化 在SEO优化推广流程中&#xff0c;网站内链优化是至关重要的一环。它不仅能提升网站的整体搜索引擎排名&#xff0c;还能改善用户体验&#xff0c;提高网站的流量。在具体操作中&#xff0c;如何有效地进行网站内链优化呢&#xff1f;本…...

SEO网络推广和SEM(搜索引擎营销)有什么不同

SEO网络推广和SEM(搜索引擎营销)有什么不同 在当今的数字营销世界中&#xff0c;SEO网络推广和SEM(搜索引擎营销)是两种非常重要的策略&#xff0c;它们都有助于提高网站的可见性和流量。它们在方法、成本、效果等方面有着显著的不同。本文将详细探讨SEO和SEM的差异&#xff0…...

链表(两数相加)(1)

一.题目 2. 两数相加 - 力扣&#xff08;LeetCode&#xff09; 二.思路讲解 2.1 审题 题目给出两个非空链表&#xff0c;每个链表表示一个非负整数&#xff0c;并且数字是逆序存储的&#xff0c;即链表的头节点对应数字的最低位。例如&#xff0c;链表 2->4->3 表示数字…...

从Remix到Ganache:一次智能合约部署的完整“后台日志”解读

从Remix到Ganache&#xff1a;智能合约部署的"后台日志"深度解析 当你第一次成功部署智能合约时&#xff0c;看到Ganache和Remix控制台输出的那一大串信息&#xff0c;是不是感觉像在看天书&#xff1f;那些Block Hash、Gas Used、txIndex究竟在说什么&#xff1f;这…...

不止是安装:在openEuler 22.03 LTS SP4上快速搭一个可用的开发/测试环境

从裸机到生产力&#xff1a;openEuler 22.03 LTS SP4半小时高效开发环境搭建指南 刚装完openEuler系统&#xff0c;看着空荡荡的终端界面&#xff0c;是不是有种"接下来该干嘛"的迷茫&#xff1f;作为开发者&#xff0c;我们需要的不是一个干净的操作系统&#xff0c…...

2025年大模型年度总结:Training Recipe与业务落地思考

一、项目介绍准备 项目 1&#xff1a;基于 RAG 的大语言模型关系抽取 1、为什么不用传统语义相似度检索&#xff0c;改用关系原型检索&#xff1f; 传统相似度检索易召回伪近邻样本&#xff08;语义相近、头尾实体不同→关系不同&#xff09;&#xff0c;干扰模型判断。 我先把…...

namespace使用

可以&#xff0c;我给你把这张图里这三种写法彻底捋清楚。你现在主要容易混的点其实是&#xff1a;namespace 到底是干嘛的N::a、using N::b、using namespace N 这三种到底差在哪所谓“冲突”到底是什么冲突1. namespace 到底是什么命名空间本质上就是&#xff1a;给名字分组&…...

OpenClaw技能开发入门:为Qwen3-14b_int4_awq定制自动化模块

OpenClaw技能开发入门&#xff1a;为Qwen3-14b_int4_awq定制自动化模块 1. 为什么需要自定义Skill 去年冬天&#xff0c;当我第一次尝试用OpenClaw自动整理电脑上的技术文档时&#xff0c;发现现有的通用技能无法完美匹配我的需求——我需要一个能理解Qwen3-14b_int4_awq模型…...

CODROB_IOTBOT嵌入式机器人开发库详解

1. CODROB_IOTBOT 库概述与工程定位CODROB_IOTBOT 是面向教育场景的嵌入式机器人开发平台&#xff0c;其核心价值不在于追求极致性能&#xff0c;而在于构建“零布线、即插即用、教学友好”的硬件抽象层。该库并非通用型驱动框架&#xff0c;而是深度耦合于 IoTBOT 硬件设计的专…...

海康工业相机——Python二次开发实战:构建实时条形码识别系统

1. 环境准备与硬件选型 第一次接触海康工业相机时&#xff0c;我被它金属外壳下的精密光学元件震撼到了。这种工业级设备和我们平时用的消费级摄像头完全不同&#xff0c;它的稳定性、帧率和图像质量完全是为生产线环境设计的。如果你手头正好有台海康相机&#xff0c;跟着我的…...