R语言 基础笔记

起因:

今天不知道要写什么。 把之前的笔记复制一下。

代码开头,导入:

c 复制代码
# 清除系统变量
rm(list = ls())

# 隐藏警告信息: 
options(warn = -1)

# 把当前目录,设置为工作目录。
library(rstudioapi)
current_folder_path <- dirname(rstudioapi::getActiveDocumentContext()$path)
setwd(current_folder_path)
getwd()

R语言 临时笔记

  1. 输入: ?trainControl 查看函数的文档
  2. 查看目标列的分布情况
    • table(wbcd$diagnosis)

检查缺失值: na

  • is.na(kk) # 检查是否存在 na
  • sum(is.na(kk)) # 计算 na 的个数
  • unname(df) # 去除 列标签,让结果更整洁一些。

文件路径

  1. setwd("some_path") 设置当前的工作文件夹。
  2. getwd() 获取当前的工作文件夹 (一般是项目的根文件夹)
    • 把数据文件 csv 放在这个文件夹里面
  3. R studio 设置 安装包的位置

安装包

  1. 安装一个包 install.packages("tidyverse")
  2. 导入一个包 library(tidyverse)
  3. 我当前使用的 R
    • 版本是 4.1.3, 查看版本 version
    • 安装路径是 C:\Program Files\R\R-4.1.3\etc
    • 可以修改里面的 Rprofile.site

Jupyter 运行 R, 只需要一句话。

!!以管理员身份运行!!

  1. conda install -c r r-base r-essentials

  2. 另一种尝试

    conda install -c r r-base=3.6.3

    conda install -c r r-essentials

    install.packages('IRkernel')

    IRkernel::installspec()

  3. 安装 R 这个才是正确的。

    conda install -c conda-forge r-base=4.1.3 r-essentials

------------------------- 笔记 -----------------------

frame 操作

  1. 新增一列
    df$year <- df[, "VCF0004"]
  2. 对 frame 的一列进行重命名,原始数据的第一列,重命名为 Year
    colnames(college_data)[1] = "Year"

frame 过滤筛选数据

  1. 类似 isin()
    year_df <- filter(df, year %in% Year )
  2. 多个条件
    filter(year_df, ideology >0.0 & ideology <10.0)
  3. 分组聚合,类似 groupby()
    df2 <- aggregate(df1KaTeX parse error: Expected 'EOF', got '#' at position 21: ...ogy_score, #̲ 聚合后要选取的目标 ...year), # 按照那一列来
    mean) # 操作函数
  4. 拼接2个frame
    rbind(A, B) 按照行拼接, r-bind , row--bind
    cbind(A, B) 按照列拼接 c-bind , column-bind
  5. 按照某一列进行排序 使用 order 函数
    df[order(df$Year, decreasing = FALSE),]
相关推荐
lili-felicity1 分钟前
CANN多模型并发部署与资源隔离
开发语言·人工智能
小龙报5 分钟前
【51单片机】深度解析 51 串口 UART:原理、配置、收发实现与工程化应用全总结
c语言·开发语言·c++·stm32·单片机·嵌入式硬件·51单片机
承渊政道8 分钟前
C++学习之旅【C++中模板进阶内容介绍】
c语言·c++·笔记·学习·visual studio
qq_5324535314 分钟前
使用 Three.js 构建沉浸式全景图AR
开发语言·javascript·ar
浅念-16 分钟前
C语言——动态内存管理
c语言·开发语言·c++·笔记·学习
草履虫建模6 小时前
力扣算法 1768. 交替合并字符串
java·开发语言·算法·leetcode·职场和发展·idea·基础
naruto_lnq8 小时前
分布式系统安全通信
开发语言·c++·算法
学嵌入式的小杨同学9 小时前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
Re.不晚9 小时前
Java入门17——异常
java·开发语言
ASKED_20199 小时前
Langchain学习笔记一 -基础模块以及架构概览
笔记·学习·langchain