我想将变量中的大写字符串字符更改为小写,并用" _"替换空格。我知道我可以使用' if'所有实例的声明,但这将花费太长时间。它是将用户的输入保存到文件名,即
user_selection = 'Barracuda Limited' # what I have
save_name == 'barracuda_limited' # what I want
注意:我已经阅读了有关如何发布和尽我所能的页面,但我刚刚开始学习编码,并且在尝试构建问题时遇到了麻烦。
答案 0 :(得分:3)
这很简单,使用str.lower()
和str.replace()
方法:
library(forecast)
library(tsoutliers)
library(lubridate)
library(dplyr)
library(ggplot2)
ActualDemand <- c(1000, 250, 500, 3000)
STRING_DATE <- c("05/13/2017","05/06/2017", "5/20/2017", "05/27/2017")
dataset <- data.frame(ActualDemand, STRING_DATE)
#convert from string to date
dataset$STRING_DATE = lubridate::mdy(dataset$STRING_DATE)
dataRowCount <- nrow(dataset)
#find start date
startDate <- NULL
for (i in 1:dataRowCount) {
if (i == 1) {
startDate <- dataset[i, 2]
next
}
compareDate <- dataset[i,2]
if (compareDate < startDate) {
startDate <- compareDate
} else {
next
}
}
#transformed set
datasetSorted <- dataset[order(dataset$STRING_DATE),]
#build time series, run outlier detection
ts <- ts(datasetSorted$ActualDemand, frequency = 52, start = startDate)
series.outliers <- tso(ts)
plot(series.outliers)
答案 1 :(得分:1)
为了获得您想要的数据,您可以执行以下操作:
user_selection = 'Barracuda Limited':
save_name = "_".join(k.lower() for k in user_selection.split())
# save_name is: 'barracuda_limited'