gpt4 book ai didi

r - 来自列表的 data.frame 和来自字符串的调用对象

转载 作者:行者123 更新时间:2023-12-02 07:44:34 24 4
gpt4 key购买 nike

我想从 Tsay 的金融时间序列书籍中复制一个表格,并意识到即使我能够做到,我的代码看起来也很笨拙并且充满了不良做法。我用 plyr 做了一些尝试,但对我来说并不奏效。

所以这是我的代码:

library(fBasics)

url= 'http://faculty.chicagobooth.edu/ruey.tsay/teaching/fts3/d-ibm3dx7008.txt'

table1.2 = read.table(url,header=T)
l1=lapply(table1.2,basicStats)
naml1 = names(l1)
datmat = as.data.frame(matrix(0,nrow=nrow(l1$Date),ncol=4))

nams = names(l1)
j=1

for( i in nams){
datmat[,j] = eval(parse(text=paste("l1",i,sep="$")))
j=j+1
}

rownames(datmat)= rownames(l1[[1]])
colnames(datmat)=colnames(table1.2)

我不关心 Date 的汇总统计信息,所以干脆去掉它。

datmat =datmat[,-1]

所以我听说应该尽可能避免使用 eval(parse(text=。我尝试使用函数 get 但没有成功。

我只是想开始摆脱不良的编程习惯,因此非常欢迎任何建议。

最佳答案

为什么要经历这一切。看来您正在执行 basicStats 函数已经执行的操作。这看起来太简单了,但我认为以下内容会为您提供相同的输出:

basicStats(table1.2)[,-1]

关于r - 来自列表的 data.frame 和来自字符串的调用对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7940950/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com