我正在创建一个程序,用于跟踪R中仓库周围的工具。这是我到目前为止所拥有的:
Assembly.LoadFrom
附带一些示例数据:
tool <- readline(prompt='Enter a Barcode: ')
if (! tool %in% df$Barcode.Number) {
message("Barcodes not found.")
} else {
initials <- readline(prompt='Enter your Initials: ')
job <- readline(prompt='Enter job number: ')
suppressMessages(library(dplyr))
message("Good to Go!")
df[df$Barcode.Number == tool, "DATE"] = as.character(Sys.Date())
df[df$Barcode.Number == tool, 'Initial'] = initials
df[df$Barcode.Number == tool, 'Job.Number'] = job
df1 <- df %>% filter(df$Barcode.Number == tool) %>%
select(Type.Equipment, Location)
print(df1)
df[df$Barcode.Number == tool, "Usage"] = df[df$Barcode.Number ==
tool, "Usage"] + 0.5
df$Status <- ifelse((df$Usage %% 1) , 'Out', 'In')
}
如您所见,它接受一个工具参数,以及一个初始和工作号输入,并根据用户输入更新日期,工作号,Times.Used和Initial列。我在为变量工具输入多个值时遇到了麻烦。目前一次只能输入一个数字,对于希望在相同的姓名缩写和工作下签出多个不同项目的人来说,这不一定实用。这个问题可能很简单,但是我如何才能为工具接受多个不同的输入数字,并使它仍然能够同时更新两个工具的数据框。我尝试了以下方法:
Barcode.Number Type.Equipment Manufacture Times.Used Initials Job
4041 Flashlight Surefire 1 GP 0
4680 Capstan Honda 1 GP 0
4682 Deep Cut Band Saw Milwaukee 1 GP 0
这会将我输入的工具另存为不同的编号,但不会更新所保存编号的框架。我是R的新手,因此非常感谢您的帮助。谢谢!
答案 0 :(得分:1)
首先使用:<-
,如果您要存储的变量不是<=
。
<=
是一个逻辑运算符,它检查是否小于或等于另一个值。
但是无论如何,您的问题是含糊的。但是,如果要用逗号分隔值,则可以用read.table
sep=","
:
number <- readline(prompt='Enter a Number: ')
values = read.table(text = number,sep=",")
因此values
将是一个包含您的值的数据框。
在您的示例所需输出中,您甚至不需要执行以下操作:
number <- readline(prompt='Enter a Number: ')
print(paste("Your numbers are",number), quote=FALSE)
答案 1 :(得分:0)
您可以使用scan
获得所需的值。然后cat
将其打印出来
number <- readline(prompt='Enter a Number: ')
cat("Your Numbers are:",scan(text=number,quiet=TRUE,sep=","))
考虑到这一点,您可以将两者放在函数格式中:
getnumbers = function(){
number <- readline(prompt='Enter the Numbers: ')
numbers <-scan(text=number,quiet=TRUE,sep=",")
cat("Your Numbers are:",numbers)
invisible(numbers)
}
getnumbers()
Enter the Numbers: 1,2,3,4,5,6,7,13,43
Your Numbers are: 1 2 3 4 5 6 7 13 43
或者如果您要保存数字,则可以执行以下操作:
saved =getnumbers()
Enter the Numbers: 1,2,3,4
Your Numbers are: 1 2 3 4
saved
[1] 1 2 3 4