首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何用r中的数据帧中的点替换单词之间的所有空格?

如何用r中的数据帧中的点替换单词之间的所有空格?
EN

Stack Overflow用户
提问于 2015-03-05 14:46:38
回答 3查看 201关注 0票数 1

我有一个数据框架,像这样:

代码语言:javascript
运行
复制
my.tree <- data.frame(Tree=c("Acer campestre", "Abies alba", "Pyrus communis", "Robinia pseudoacacia", "Tilia cordata"), 
                      Freq=c(23,65,47,69,65))

我想立刻用point替换单词之间的所有point。我想要创建新的data frame (或者修改这个data frame),在这里树名的单词之间会有点,例如Acer.campestreAbies.albaPyrus.communis等等。

是否可以立即替换,或者如何更容易地进行这些更改?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-03-05 14:48:45

你可以:

代码语言:javascript
运行
复制
my.tree$Tree <- gsub(pattern = " ", replacement = ".", x = my.tree$Tree)

> my.tree
#                  Tree Freq
#1       Acer.campestre   23
#2           Abies.alba   65
#3       Pyrus.communis   47
#4 Robinia.pseudoacacia   69
#5        Tilia.cordata   65
票数 2
EN

Stack Overflow用户

发布于 2015-03-05 14:49:57

你可以:

代码语言:javascript
运行
复制
> library(dplyr); mutate(my.tree, Tree = gsub(" ", ".", Tree))

#                  Tree Freq
#1       Acer.campestre   23
#2           Abies.alba   65
#3       Pyrus.communis   47
#4 Robinia.pseudoacacia   69
#5        Tilia.cordata   65
票数 3
EN

Stack Overflow用户

发布于 2015-03-05 14:57:13

使用gsub可能更安全(也更传统),但也可以使用make.names

代码语言:javascript
运行
复制
make.names(my.tree$Tree)
# [1] "Acer.campestre"       "Abies.alba"           "Pyrus.communis"      
# [4] "Robinia.pseudoacacia" "Tilia.cordata" 

甚至是chartr

代码语言:javascript
运行
复制
chartr(" ", ".", my.tree$Tree)
# [1] "Acer.campestre"       "Abies.alba"           "Pyrus.communis"      
# [4] "Robinia.pseudoacacia" "Tilia.cordata"   
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28880618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档