R语言如何表示键值对

Python012

R语言如何表示键值对,第1张

你就是在说哈希表吧,python中的dictionary,c++里的unordered map.

有包的,就叫hash,具体用法:

首先安装hash包,library()一下做好准备。

# 两句一样效果,键是26个小写英文字母,对应的值是1到26

h <- hash( keys=letters, values=1:26 )

h <- hash( letters, 1:26 )

# 读取方法三种

h$a

h[ "foo" ]

h[[ "foo" ]]

# 插入键值对

h$foo <- "bar"

# 删除变量h

clear(h)

rm(h)

R中的列表类似于Python中的字典(dictionary)或者Peal中的哈希(hash),但又有差别。其实R有一个叫做hash的包,可以实现与Python中的dic及Perl中的hash相同的功能。

R中的list与Python中dictionary的区别:

虽然看起来有点像,但R中的list与Python中的字典还是有很大差别的,主要体现在下面几个方面:

3.1 可以没有键名

hase是键值对,必须有键名,但R的list可以没有键名,默认键名为[[n]],n为元素所在位置。

3.2 有序,且允许键值重复

这应该是R的list与Python中的dictionary最大的区别了。Peal中的hash及Python中dic的最大特点就是无序且键值唯一,这样在牺牲有序性的情况下保证了数据存取的高效性。但R中的list这两方面都不满足。其性能与hash及dic应该也有差别吧(没比较过)。

全局修改

a<-c(1:10)

#全局修改

old_par<-par(no.readonly=TRUE) #记录默认样式到变量old_par中

par(lty=2,pch=17) #设置线型lty=2虚线,pch=17实心三角形,键值对的方式进行设置

#第一幅图,已经和默认样式不一样了

b<-rnorm(10)

plot(a,b,type='b')

#第二幅图,和第一幅图样式一样

b<-rnorm(10)

plot(a,b,type='b')

par(old_par) #应用默认样式

#第三幅图,默认样式

b<-rnorm(10)

plot(a,b,type='b')

针对一幅图片有效

a<-c(1:10)

b<-rnorm(10)

plot(a,b,type='b',lty=2,pch=17)

如下列表为可以设置的键值对

参数作用描述列表

pch点的符号指定绘制点时使用的符号

cex符号的大小指定符号的大小。cex是一个数值,表示绘图符号相对于默认

大小的缩放倍数。默认大小为1,1.5表示放大为默认值的1.5倍,

0.5表示缩小为默认值的50%,等等

lty线条类型

lwd线条宽度指定线条宽度。lwd是以默认值的相对大小来表示的(默认值为1)。

例如,lwd=2将生成一条两倍于默认宽度的线条

col 默认的绘图颜色。某些函数(如lines和pie)可以接受一个

含有颜色值的向量并自动循环使用。

例如,如果设定col=c(red, blue)并需要绘制三条线,则

第一条线将为红色,第二条线为蓝色,第三条线又将为红色

col.axis 坐标轴刻度文字的颜色

col.lab 坐标轴标签(名称)的颜色

col.main 标题颜色

col.sub 副标题颜色

fg 图形的前景色

bg 图形的背景色

cex 表示相对于默认大小缩放倍数的数值。

默认大小为1,1.5表示放大为默认值的1.5倍,0.5表示缩小

为默认值的50%,等等

cex.axis 坐标轴刻度文字的缩放倍数。类似于cex

cex.lab 坐标轴标签(名称)的缩放倍数。类似于cex

cex.main 标题的缩放倍数。类似于cex

cex.sub 副标题的缩放倍数。类似于cex

font 整数。用于指定绘图使用的字体样式。1=常规,2=粗体,3=斜体,

4=粗斜体,5=符号字体(以Adobe符号编码表示)

font.axis 坐标轴刻度文字的字体样式

font.lab 坐标轴标签(名称)的字体样式

font.main 标题的字体样式

font.sub 副标题的字体样式

ps 字体磅值(1磅约为1/72英寸)。文本的最终大小为 ps*cex

family 绘制文本时使用的字体族。标准的取值为serif(衬线)、sans(无衬线)和mono(等宽)

pin 以英寸表示的图形尺寸(宽和高)

mai 以数值向量表示的边界大小,顺序为“下、左、上、右”,单位为英寸

mar 以数值向量表示的边界大小,顺序为“下、左、上、右”,单位为英分*。

默认值为c(5, 4, 4, 2) + 0.1

标题title

坐标轴axis

参考线abline

图例legend

文本标注text(绘图区域内部添加文字),mtext(图形四个边界添加文字)