R语言字符串处理常用函数

Python016

R语言字符串处理常用函数,第1张

R语言字符串处理常用函数

R语言中常用的字符串处理函数:

(1)得到字符串长度:nchar()

# 生成示范字符串

(2)剪切字符串:strsplit()

# 对字符串进行剪切

(3) 得到子字符串:substr()

# 得到子字符串

(4) 判断字符串中是否有某个字串:grepl()

# 判断字符串中是否有某个字串

(5) 字符串替换:gsub()

(6)字符串定位

在Hmisc包里,有一个函数可以很方便的对文本的的目标字符串进行定位,substring.location()

得出相关系数我们并不一定能得出数据之间的相关水平,这时候我们会进行相关性检验来进行量化。

置信区间:confidence interval,是指由由样本统计量所构成的总体参数的估计区间。在统计学中,一个概率样本的置信区间是对这个样本的某个总体参数的区间估计。置信区间展现的是这个参数的真实值有一定概率落在测量结果的周围的程度。置信区间给出的是被测量参数的测量值的可信程度。简单来说就是只有概率还不行,还得知道概率发生的范围。例如,如果在一次大选中某人的支持率为55%,而置信水平0.95以上的置信区间是(50%,60%),那么他的真实支持率有百分之九十五的机率,落在百分之五十和百分之六十之间,因此他的真实支持率不足一半的可能性小于百分之5。

cor.test函数每次只能检测一组变量。它有四个重要的参数,x和y是需要检测的相关性的变量,alternative参数指明是进行两边检验(two.sided)或正相关检验(greater)或负相关检验(less)。method参数选择算法(Pearson、Spearman、Kendall)

psych包中的corr.test可以一次性检验多组变量,可以递归计算整个数据集。

该函数不仅计算了相关系数,而且计算了相关性检验的值

偏相关

t检验适用于样本含量较小,总体方差未知的正态分布数据

UScrime数据集是美国七个州的刑罚制度对犯罪率影响的数据集。

t检验使用t.test()函数,格式为y~x,其中y是数值型变量,x是二分型变量。波浪线后面是分组变量,南方和北方分成两组,做了t检验。

如果想在多余两个组的数据中进行比较,数据符合正态分布我们就用方差分析,如果不符合正态分布则用非参数的方法。在相关性检验中,我们可以用参数方法和非参数 方法。统计分析方法包括参数检验和非参数检验,

用的最多的,是求均值的mean()函数,当然这里也要提到,像sum()这种求和函数,

还有sd(x) 标准差函数,var(x) 方差函数。min()求最小值,max()求最大值。

我们来具体试试,这里使用一个向量:

test<-c(2,4,5,23,199,25,78,90,12)

求最大值

>max(test)

[1] 19

求最小值

>min(test)

求和

>sum(test)

[1] 43

求标准差,求方差

>sd(test)

[1] 65.01154

>var(test)

[1] 4226.

在来试试最重要的均值

>mean(test)

[1] 48.66667

另外中位数计算。使用median()函数

>median(test)

[1] 23

如果给定一种概率分布,通常会有四类计算问题:

计算其概率密度density (d)计算其概率分布probability(p)计算其百分位数quantile (q)随机数模拟random (r)上面四类计算对应的英文首字母,就是R语言类率分布函数的开头字母。

比如说,正态分布是norm的化,那密度函数就是dnorm(),分布函数就是pnorm(),

更有用的是用相应分布生成随机数,比如rnorm(),就会生成服从正态分布的随机数。

比如我们生成100个服从正态分布的随机数

rnorm(100)

[1] -9.064408e-01 1.026560e+00 -1.097470e+00 1.055395e+00 9.377175e-01

[6] -2.080103e-01 -3.092396e-01 -8.739942e-01 -1.242774e+00 1.102486e+00

[11] 1.082092e+00 -1.695528e+00 -5.930809e-01 -2.100800e-01 8.253859e-01

[16] -1.112551e+00 -3.960474e-01 -9.354820e-01 7.291608e-01 -3.773510e-01

[21] -3.438082e-01 -7.378688e-02 -9.047609e-01 -1.036344e+00 9.485103e-01

[26] -3.437985e-01 -2.145275e-02 1.350098e+00 -1.283633e+00 3.767240e-01

[31] 1.169566e+00 -4.325399e-01 -9.215626e-02 3.839357e-01 3.045491e-01

......

我们再用相应的频率分布直方图来看一下,这些生成的随机数:

hist(rnorm(100))

R就画出了这些随机数的频率分布图