文档章节

R语言系列:生成数据

explore
 explore
发布于 2012/09/19 09:00
字数 832
阅读 711
收藏 1

生成规则数据
1、使用“:“,如x=1:10,注意该方法既可以递增也可以递减,如y=10:1
2、seq,有两种用法:①seq(起点,终点,步长); ②seq(length=9, from=1, to=5)
    seq还有一种简写:seq(x)    #相当于1:length(x),但当length(x)为0时,返回integer(0)
3、c(1,2,8)
4、使用scan(),可以等待键盘输入。输入过程中,可以使用空格分隔每个元素,也可以一行输入一个元素。输入完毕只需键入一个空行即可。
5、rep(x,n)    #将x重复n次,可使用each限定为依次重复形式
    rep(1:3,3)
    rep(1:3,each=3)
6、sequence(c(4,9))    构造一个包含1:4和1:9共13个元素的向量
7、gl(k,n,length=,label=)构造一个因子序列。k为水平数,n为每个水平连续出现的次数,length为整个序列的长度,label为因子标签。
举例:gl(3,5,length=20,label=c('a','b','c'))
8、expand.grid(a=1:3,b=1:4,c=c('x','y','z'))构造一个数据框,将各参数的各水平完全搭配。
9、paste:该函数每次从每个参数中提取一个元素组成一个字符串,直至元素最多的参数取完,其它元素不足的参数循环补足。 可接受多个参数,每个参数可包括多个元素。例:paste(c("X","Y"), 1:10, sep="")
10、combn(x, n)    #生成x中取n个元素的所有组合

常用随机数字
runif(n,min=0,max=1)    #uniform,均匀分布
rnorm(n,mean=0,sd=1)    #Gaussian(normal),正态分布
rexp(n,rate=1)    #exponential,指数分布
rlnorm(n,meanlog=0,sdlog=1)    #lognormal,对数正态分布
rdirichlet    #狄利克雷分布,不在默认包里,需安装其他包如rBeta2009、MCMCpack、gtools。
 

随机抽样
sample(x, n, replace=FALSE, prob=)
sample(10)    #随机排列1:10,默认不重复抽样
sample(10, 5)    #从1:10中随机抽5个,不重复抽样
x=10:20; sample(x);    #随机排列x
sample(10, replace=TRUE)    #从1:10中随机抽10次,允许重复抽样
sample(0:1, 100, replace=TRUE)    #100次伯努利试验
sample(c(0,1), 10, replace=TRUE, prob=c(0.1, 0.9))    #分别以0.1和0.9的概率抽取0和1

字符切割
strsplit(x, split, fixed = FALSE, perl = FALSE)
    #根据split将x分割,若split=“”,则将x分为单个字符。
    #默认split为正则表达式,可使用fixed=TRUE,对split做精确匹配
    #当perl=TRUE时,使用perl的正则表达式规则
    #当分隔符为?, +, {, |, (, )时,要使用'\\'来消除特殊含义

字符连接
paste(letters,collapse='')    #将26个小写字母连成一个字符串
    #使用collapse指定的连接符,连接paste的结果为一个字符串
    #鉴别以下几种情况
paste(letters[1:5])    #不能连接,输出5个字母:"a" "b" "c" "d" "e"
paste("a", "b", "c", "d", "e", sep='')    #输出"abcde",注意和前者的差别
paste(1:3,4:6,collapse='-')    #输出"1 4-2 5-3 6"
paste(1:3,4:6,sep='',collapse='-')    #输出"14-25-36"
paste(c(1:3,4:6),collapse='-')    #输出"1-2-3-4-5-6"

R语言中的内嵌常量
LETTERS    #26个大写字母
letters    #26个小写字母
month.abb    #12个月份的三字母缩写
month.name    #12个月份的全称
pi    #3.14...
字母和月份可以取部分子集,例:letters[c(1:8)]

© 著作权归作者所有

共有 人打赏支持
explore
粉丝 13
博文 60
码字总数 34421
作品 0
太原
私信 提问
R语言学习笔记之聚类分析

使用k-means聚类所需的包: factoextra cluster #加载包 library(factoextra) library(cluster)l #数据准备 使用内置的R数据集USArrests #load the dataset data("USArrests") #remove any m......

R语言中文社区
2018/01/16
0
0
【R图秀-2】社交网络数据可视化(一)

作者简介Introduction 傅兴:个人公众号:Rapp 往期回顾 为了进一步提高自己数据获取的能力,我把目光放到了互联网上一个重要的数据来源:社交网络(Social Network),比如国外的facebook和...

R语言中文社区
2018/01/28
0
0
算法|决策树算法究竟说的是什么?

作者简介 浩彬老撕,R语言中文社区特邀作者。 个人公众号:探数寻理 决策树算法概述

kmd8d5r
2018/05/10
0
0
OSC 第 91 期高手问答 — R 语言的核心技术

OSCHINA 本期高手问答 ( 9月16日- 9月22日 ) 我们请来了《R的极客理想 高级开发篇》的作者@bsspirit (张丹)为大家解答关于 R 语言的核心技术的问题。 张丹,@bsspirit ,R语言资深用户,系...

叶秀兰
2015/09/16
5.4K
46
R语言学习笔记之相关性矩阵分析及其可视化

计算相关矩阵 R内置函数 cor() 可以用来计算相关系数:cor(x, method = c("pearson", "kendall", "spearman")),如果数据有缺失值,用cor(x, method = "pearson", use = "complete.obs")。 ......

R语言中文社区
2018/02/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

SpringCloud 与 SpringBoot 的版本兼容

Spring Cloud Finchley 构建并使用 Spring Boot 2.0.x,预计不会与Spring Boot 1.5.x一起使用Spring Cloud Edgware Spring Boot 1.5.xDalston 和 Edgware 发布版基于Spring Boot 1......

晨猫
15分钟前
2
0
microtime 记录的时间点,以毫秒来显示,并显示每一阶段占用百分比。统计代码执行时间。

function mini_bench_to($arg_t, $arg_ra=false){ $tttime=round((end($arg_t)-$arg_t['start'])*1000,4); if ($arg_ra) $ar_aff['total_time']=$tttime; else $aff="total......

lwkai
17分钟前
2
0
Docker 解决容器时间与主机时间不一致的问题三种解决方案

这篇文章主要介绍了Docker 解决容器时间与主机时间不一致的问题的相关资料,这里提供了三种方法,供大家参考,需要的朋友可以参考下 Docker容器时间与主机时间不一致 通过date命令查看时间 查...

Jack088
19分钟前
4
0
neo4j 开启远程web访问7474端口 以 用浏览器打开远程neo4j的web控制台界面

一、对于3.0以前的版本 在安装目录的 $NEO4J_HOME/conf/neo4j.conf 文件内,找到下面一行,将注释#号去掉就可以了 #dbms.connector.https.address=localhost:7474 改为 dbms.connector.https...

Airship
19分钟前
2
0
集合排序

根据指定规则,对集合元素进行自定义排序 List<Map<String, Object>> list= data.stream().sorted(new Comparator<Map>() { @Override public int compare(Map o1, Map o2) { Comparator c =......

zhaochaochao
20分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部