gpt4 book ai didi

r - 如何在 R 中将 for 循环输出保存为 data.frame?

转载 作者:行者123 更新时间:2023-12-01 13:38:06 25 4
gpt4 key购买 nike

我想知道如何保存 for loop 的输出作为data.frame ?假设使用 mtcars数据集我有以下 for loop脚本:

for (i in seq_len(nrow(mtcars))) { 
if (i <= 30) {

next
}

print(mtcars[i,])
}

mpg cyl disp hp drat wt qsec vs am gear carb
Maserati Bora 15 8 301 335 3.54 3.57 14.6 0 1 5 8
mpg cyl disp hp drat wt qsec vs am gear carb
Volvo 142E 21.4 4 121 109 4.11 2.78 18.6 1 1 4 2

但如果我要去 save它在 output文件为 dataframe我会得到以下信息:

   output <- as.data.frame(c())
for (i in seq_len(nrow(mtcars))) {
if (i <= 30) {

next
}

output<- c(output,mtcars[i,])
}


### then the output is

> output
$mpg
[1] 15

$cyl
[1] 8

$disp
[1] 301

$hp
[1] 335

$drat
[1] 3.54

$wt
[1] 3.57

$qsec
[1] 14.6

$vs
[1] 0

$am
[1] 1

$gear
[1] 5

$carb
[1] 8

$mpg
[1] 21.4

$cyl
[1] 4

$disp
[1] 121

$hp
[1] 109

$drat
[1] 4.11

$wt
[1] 2.78

$qsec
[1] 18.6

$vs
[1] 1

$am
[1] 1

$gear
[1] 4

$carb
[1] 2

我知道简单的索引 output <- mtcars[-(1:30), ] ,但这不是我现实生活情况(更复杂)的解决方案。我真的需要循环来做我想做的事。

最佳答案

这是一个与您的代码最相似的解决方案。
这些点正在使用初始化(索引 ...[NULL, ])和函数 rbind()

output <- mtcars[NULL,]
for (i in seq_len(nrow(mtcars))) {
if (i <= 30) {
next
}
# ...
output <- rbind(output, mtcars[i, ])
}

关于r - 如何在 R 中将 for 循环输出保存为 data.frame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42419518/

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