拆分带分隔符的单值字符向量 [英] Split delimited single value character vector
问题描述
我有一个用户提供的字符串,例如 "Mon,Tue,Wed,Thu,Fri"
.请注意,此值是用户提供的输入.用户可以提供诸如 "Mon,Tue,Wed"
之类的内容.
我想将此作为向量,用于绘图和进一步分析.
由于用户提供的值是单个逗号分隔的值,我们需要将值分隔为单个值,然后构造向量.
有没有办法直接构造vector.
即我应该从Mon,Tue,Wed,Thu,Fri"得到一个向量.正如预期的那样,下面的代码返回一个单值向量.
<代码>>工作日 <- c(天)>打印(工作日)[1]周一、周二、周三、周四、周五"
但我需要像下面这样的东西
<代码>>天 <- c("Mon","Tue","Wed","Thu","Fri")>打印(天)[1]周一"周二"周三"周四"周五"
请注意,我不是在读取 CSV 文件.我只是想读取用户提供的单个 CSV 行作为向量.
您可以使用 strsplit
:
wkdays <- 周一、周二、周三、周四、周五"取消列表(strsplit(wkdays,,"))
这给出:
<块引用><代码>>取消列表(strsplit(wkdays,,"))[1]周一"周二"周三"周四"周五"
<小时>
另一种方法是使用scan
:
scan(text = wkdays, sep = ",", what = character())
给出相同的结果.
I have a user provided String like "Mon,Tue,Wed,Thu,Fri"
. Please note that this value is user provided input. User may provide something like "Mon,Tue,Wed"
and so on.
I want to get this as vector which will be used for plotting and for further analytics.
Since the value provided by user is a single comma delimited value, we need to separate the value in to individual values and then construct vector.
Is there any way to construct vector directly.
i.e I should get a vector from "Mon,Tue,Wed,Thu,Fri". As expected, below code returns a single value vector.
> weekdays <- c(days)
> print(weekdays)
[1] "Mon,Tue,Wed,Thu,Fri"
But I need something like below
> days <- c("Mon","Tue","Wed","Thu","Fri")
> print(days)
[1] "Mon" "Tue" "Wed" "Thu" "Fri"
Note that I am not reading a CSV file. I am just trying to read a user provided single CSV row as vector.
You can use strsplit
for that:
wkdays <- "Mon,Tue,Wed,Thu,Fri"
unlist(strsplit(wkdays, ","))
this gives:
> unlist(strsplit(wkdays, ",")) [1] "Mon" "Tue" "Wed" "Thu" "Fri"
An alternative is to use scan
:
scan(text = wkdays, sep = ",", what = character())
which gives the same result.
这篇关于拆分带分隔符的单值字符向量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!