Substring()函数在R中被广泛用于提取数据中存在的字符或操纵数据,您可以轻松从字符串中提取所需的字符,并更换字符串中的值。
大家好,希望你们做得很好!今天让我们专注于R中的支持函数。
Substring() 函数语法
Substring: 我们可以执行诸如提取值、替换值等多项工作,为此我们使用 **substr()**和 **substring()等函数。
1substr(x,start,stop)
2substring(x,first,last=1000000L)
何处:
- x = 输入数据 / 文件
- 开始 / 第一 = 开始字符串的索引
- 停止 / 最后 = 结束字符串的索引
在 R 中使用 substring() 函数提取字符
好吧,我希望你对语法非常清楚,现在,让我们使用 R 中的 substring() 函数从字符串中提取一些字符。
1#returns the characters from 1,11
2df<-("Journal_dev_private_limited")
3substring(df,1,11)
** 输出 = Journal_dev
**
1#returns the characters from 1-7
2df<-("Journal_dev")
3substring(df,1,7)
原标题:《日记》
正如您可以观察到的,R中的 substring() 函数将开始/第一和最后/终点值作为参数,并索引字符串,并返回所需的维度字符串。
在 R 中使用 substring() 函数替换
借助 substring() 函数,你也可以用你想要的值代替字符串中的值。
1#returns the string by replacing the _ by space
2df<-("We are_developers")
3substring(df,7,7)=" "
4df
** 输出 = 我们是开发人员
**
1#string replacement
2df<-("R=is a language made for statistical analysis")
3substring(df,2,2)=" "
4df
输出 = R是用于统计分析的语言
很棒,你做到了!这样,你可以用你想要的值代替字符串中的值。
在上述情况下,您已将_
( underscore)** **和`="(等级符号)代替为``(空间)。
使用 substring() 函数替换字符串
到目前为止,一切都很好!但是如果您被要求取代一些值,这应该反映在所有现有的字符串?
不要担心!我们可以替代值,并使它们反映在所有存在的字符串上。
让我们看看它是如何工作的!
1#replaces the 4th letter of each string by $
2df<-c("Alok","Joseph","Hayato","Kelly","Paloma","Moca")
3substring(df,4,4)<-c("$")
4df
Output = "Alo$" "Jos$ph" "Hay$to" "Kel$y" "Pal$ma" "Moc$"
啊,发生了什么事? 字符串中的每4个字母都被$
符号取代了!
好吧,这对你来说是 substring() 它可以用我们给出的值代替标记的位置。
在上述情况下,所有输入字符串中的每一个第4个字母都被$
符号取代了substring()
函数。
在 R 中使用 substr() 和 str_sub() 函数
我们已经专注于行,现在,我们也将研究列中的字符提取。
让我们看看它是如何工作的!
我们可以创建一个数据框架,使用样本数据有2个列,即技术和普及,让我们从这些数据中提取一些特定的字符。
1#creates the data frame
2df<-data.frame(Technologies=c("Datascience","machinelearning","Deeplearning","Artificalintelligence"),Popularity=c("70%","85%","90%","95%"))
3df
1Technologies Popularity
21 Datascience 70%
32 machinelearning 85%
43 Deeplearning 90%
54 Artificalintelligence 95%
是的,我们现在已经创建了一个 data frame。让我们提取一些文本. 要做到这一点,请运行下面的代码来提取技术列中的所有字符串中的 8-10 中的字符串,使用 R 中的 substr() 函数。
1#creates new column with extracted values
2df$Extracted_Technologies=substr(df$Technologies,8,10)
3df
- 输出 = *
1Technologies Popularity Extracted_Technologies
21 Datascience_DS 70% enc
32 machinelearning_ML 85% lea
43 Deeplearning_DL 90% rni
54 Artificalintelligence_AI 95% ali
现在,您可以看到我们已经创建了一个新的列,包含提取的数据. 像这样,您可以通过指定索引值来提取数据。
在 R 中使用 str_sub() 函数
现在,正如我之前提到的,我们将研究 str_sub() 函数及其提取方式。
让我们滚吧!
再次,我们将创建相同的数据框架,包括技术的数据和其受欢迎性。
1df<-data.frame(Technologies=c("Datascience","machinelearning","Deeplearning","Artificalintelligence"),Popularity=c("70%","85%","90%","95%"))
2df
1Technologies Popularity
21 Datascience 70%
32 machinelearning 85%
43 Deeplearning 90%
54 Artificalintelligence 95%
好吧,让我们使用 str_sub() 函数,该函数将返回索引的字符作为输出。
1#using the str_sub function
2df$Extracted_Technologies=str_sub(df$Technologies,10,15)
3> df
正如您所看到的,函数 str_sub() 提取了索引值,并如下所示返回输出。
1Technologies Popularity Extracted_Technologies
21 Datascience 70% ce
32 machinelearning 85% arning
43 Deeplearning 90% ing
54 Artificalintelligence 95% intell
包装上
是的,采集或生成给定字符串的子字符串是非常容易的任务. 由于像 substr(), substring(),和 str_sub() 这样的函数,使子字符串变得有趣和令人兴奋。
现在就这样了,不要忘了在你的计算中使用这个惊人的功能。
** 更多研究:** R文档