我想使用for循环在我的R数据帧中添加多个列

我想使用for循环在我的R数据帧中添加多个列,r,for-loop,R,For Loop,我想添加名为day2、day3到day19的列 我试过这个代码,但不起作用 for(i in 2:19) { n=paste("day",i,sep="") mydata<-mutate(mydata,n=SMA(Price,i)) } for(我在2:19中) { n=粘贴(“日”,i,sep=”“) mydata假设您的data.frame是xdf xnew <- paste("day", 1:19, sep="") xdf[,c(xnew)] <- 0

我想添加名为day2、day3到day19的列 我试过这个代码,但不起作用

for(i in 2:19)
{
    n=paste("day",i,sep="")
    mydata<-mutate(mydata,n=SMA(Price,i))
}
for(我在2:19中)
{
n=粘贴(“日”,i,sep=”“)

mydata假设您的data.frame是xdf

xnew <- paste("day", 1:19, sep="")
xdf[,c(xnew)] <- 0  # column type will be numeric. change to "" if you wish to make character
names(xdf)

很高兴为您提供帮助,因为您对SO还不熟悉

请尝试以下内容:

library(TTR);
data(ttrc);

# Assume mydata is ttrc    
mydata = ttrc;

# SMA for 5 days - you can also loop it
n = paste("day",5,sep="")

# To assign to mydata use !!
mydata = mutate(mydata,!!n := SMA(Close,5) )

欢迎使用堆栈溢出。请适当。此外,为了使您的问题重现。
library(TTR);
data(ttrc);

# Assume mydata is ttrc    
mydata = ttrc;

# SMA for 5 days - you can also loop it
n = paste("day",5,sep="")

# To assign to mydata use !!
mydata = mutate(mydata,!!n := SMA(Close,5) )