学习笔记,仅供参考
学习书目:《R语言空间数据处理与分析实践教程》–卢宾宾;


基础数据操作与处理

设置工作路径,并导入包

workL = "F:/MyStudio/Rstudio/RSpaceMetrology/myRdoc"
setwd(workL)
#getwd()

函数学习记录表

数据类型转换

a <- as("123", "numeric")
b <- as.numeric("456")
class(a)
class(b)

match函数

test1 <- c("A", "A", "B", "B", "B")
type_test1 <- unique(test1)
print(type_test1)
idx <- match(test1, type_test1)
print(idx)

which.min和which.max

test2 <- c(9, 4, 7, 2, 9, 5, 3)
which.min(test2)
which.max(test2)

rev函数

rev函数可以实现向量或矩阵的翻转;当进行矩阵的翻转时,rev函数将矩阵当做一个向量处理,矩阵转换为向量的原则以列优先

test3 <- c(1:5)
print(test3)
print(rev(test3))
print("----------------------")
test4 <- matrix(1:12, nrow = 3)
print(test4)
print(rev(test4))
print(matrix(rev(test4), nrow = 3))

用dplyr包中对数据进行处理

library(dplyr)data01 <- read.csv("comp.csv")
head(data01)
#选取Demo列
select(data01, "Dame")  %>% head()
#选取首字母以B开头的列
filter(data01, Dame == 0) %>% head()
#按照Dame列的大小给data01排序
arrange(data01, Dame) %>% head()
#按照Dame列的大小对data01进行降序排序
arrange(data01, desc(Dame)) %>% head()

用rlist包处理关系型数据


library(rlist)#创建一个listperson <- list(p1=list(name="Ken",age=24,interest=c("reading","music","movies"),lang=list(r=2,csharp=4,python=3)),p2=list(name="James",age=25,interest=c("sports","music"),lang=list(r=3,java=2,cpp=5)),p3=list(name="Penny",age=24,interest=c("movies","reading"),lang=list(r=1,cpp=4,python=2)))str(person)
list.map(person, age)
list.map(person, names(lang))
p.age25 <- list.filter(person, age >= 25)
str(p.age25)
p.py3 <- list.filter(person, lang$python >= 3)
str(p.py3)

利用lubridate包处理时间数据


library(lubridate)dateString <- c('20131113','120315','12/17/1996','09-01-01')
(date <- parse_date_time(dateString, order = c('ymd','mdy','dmy','ymd')))
wday(date[1])
wday(date, label = TRUE)
month(date)#查看是否有时间的交叠
begin1 <- ymd_hms("20150903, 12:00:00")
end1 <- ymd_hms("20160804, 12:30:00")
begin2 <- ymd_hms("20151203, 12:00:00")
end2 <- ymd_hms("20160904, 12:30:00")
(date_1 <- interval(begin1, end1))
(date_2 <- interval(begin2, end2))
int_overlaps(date_1, date_2)

利用tidyr包进行数据处理


library(tidyr)widedata <- data.frame(person=c('Alex','Bob','Cathy'),grade=c(2,3,4),score=c(78,89,88),age=c(18,19,18))
widedata
#整合为长数据
longdata <- gather(widedata, variable, value,-person)
longdata#合并
wideunite<-unite(widedata, information, person, grade, score, age, sep= "-")
wideunite
#拆分
widesep <- separate(wideunite, information,c("person","grade","score","age"), sep = "-")
widesep

R语言空间数据处理(part1)--基础数据操作与处理相关推荐

  1. R语言空间数据处理(part2)--空间数据读写

    学习笔记,仅供参考 学习书目:<R语言空间数据处理与分析实践教程>–卢宾宾; 准备工作 设置工作路径,并导包 workL = "F:/MyStudio/Rstudio/RSpac ...

  2. 【R语言与数据分析实战】数据操作(一):基于向量的处理与外部数据处理

    目录 1.R中的常用数据集 2.读写CSV文件 (1) 读写CSV文件 (2) 读写对象文件 3.合并数据框的行与列 4.apply系数函数 (1) apply (2) lapply (3) sapp ...

  3. R语言基础数据操作fBasics

    R语言基础数据操作&fBasics xlsx文件的导入 library(readxl) data1 <- read_excel("C:/Users/12241/Desktop/ ...

  4. R 语言在数据处理上的禀赋之——独特的数据类型

    R 语言天生就有数据处理的禀赋,有很重要的一个原因是R有他自己独特的数据类型. 为啥这样说呢? Java中的数据类型 先来看看其他传统编程语言中的数据类型是啥样子.拿java来说,java语言中有基本 ...

  5. R语言案例分析:多元数据的基本统计分析

    R语言案例分析:多元数据的基本统计分析 来自<多元统计分析与R语言建模> 第四版 数据集下载 我们利用该数据集中的Case1来完成下面的R语言操作: options(digits = 4) ...

  6. r语言用行名称提取数据框信息显示na_R语言-05数据框创建,以及按条件取数据框数据...

    创建数据框 数据框是R语言的一种基础数据格式,通常excel等表格形式数据读入后都是数据框格式. 下例创建了一个3列5行的数据框,列的名字分别是site.season.pH my.dataset si ...

  7. R语言使用:符号生成向量数据、使用pie函数可视化饼图、自定义设置饼图色彩为彩虹色、使用box函数在当前图上加个方框

    R语言使用:符号生成向量数据.使用pie函数可视化饼图.自定义设置饼图色彩为彩虹色.使用box函数在当前图上加个方框 目录 R语言使用:符号生成向量数据.使用pie函数可视化饼图.自定义设置饼图色彩为 ...

  8. R语言使用basename函数获取数据链接地址中的文件名称(removes all of the path up to and including the last path separator )

    R语言使用basename函数获取数据链接地址中的文件名称(removes all of the path up to and including the last path separator (i ...

  9. R语言对dataframe的行数据进行排序(Ordering rows)实战:使用R原生方法、data.table、dplyr等方案

    R语言对dataframe的行数据进行排序(Ordering rows)实战:使用R原生方法.data.table.dplyr等方案 目录

最新文章

  1. 从Java类库看设计模式
  2. 循环遍历和迭代器遍历如何选择
  3. 第五课.高斯判别分析
  4. java 循环时间调用 程序(转)
  5. 如何为“选择”框创建占位符?
  6. Mac上安装hadoop
  7. 《统一沟通-微软-实战》-6-部署-2-中介服务器-6-语音路由-路由
  8. 标准程序的Parameter id 并不一定准确
  9. 学习笔记(11):Python网络编程并发编程-粘包底层原理分析
  10. Java语言概述及常用DOS命令
  11. 吴恩达 深度学习 编程作业(1-2.1)- Python Basics with Numpy
  12. 如何搭建一个好的数据指标体系?
  13. python最后输出两位小数_人生苦短,我用python!
  14. Vue 单页面应用 把公共组件放在 app.vue 但是我希望某个页面没有这些公共组件怎么办???(比如登陆页面)
  15. egg(18)--Mongodb4.x介绍以及Mongodb账户权限配置
  16. mac 下tomcat 9.0+eclipse+mysql8.0.12配置相关问题
  17. 一个屌丝程序猿的人生(一百零九)
  18. 微信小程序使用图标库
  19. QCC蓝牙芯片PIO操作
  20. matlab如何看历史,matlab创建有价值历史纪录.txt 源代码在线查看 - Matlab创建有价值历史纪录(完整版),matlab 常用的命令集锦。 资源下载 虫虫电子下载站...

热门文章

  1. mysql某个字段改为非unique
  2. makefile 基本总结
  3. html跑马灯可以上下动ma,使用 JS 实现上下滚动走马灯
  4. 纽约大学计算机和信息科学专业排名,纽约大学计算机科学与信息系统世界排名2018年最新排名第33(QS世界排名)...
  5. Linux操作系统下实现远程开机
  6. NUMA架构的CPU -- 你真的用好了么?
  7. Exchange端口列表
  8. IPv6实验1_IPv6地址配置
  9. Redis基础知识之————如何处理客户端连接
  10. 使用VMDepot镜像快速部署CKAN开放数据门户