gpt4 book ai didi

r - 在 R 中使用循环创建和处理多个列

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

我是 R 的新手,我想学习如何编写循环来创建和处理多个列。

我将一个表导入到 R 中,其中包含包含 23 个变量的数据。对于所有这些变量,我想计算人均值 m 将其乘以 1000,然后将数据写入新表或与旧数据相同的表中。

所以对于这个只有一列,我的操作是这样的:

<i>agriculture<-cbind(agriculture,"Total_value_per_capita"=agriculture$Total/agriculture$Total.Population*1000)</i>

现在我要问的是如何在 23 个变量的循环中执行此操作,这样我就不必编写 23 行类似的代码。

我认为解决方案可能看起来与粘贴在该线程中的代码非常相似:

loop to create several matrix in R (maybe using paste)

但我没有让它在我的代码上工作。

所以任何建议都会非常有帮助。

最佳答案

我总是喜欢在 R 中使用合适的 *ply 函数而不是循环。在这种情况下,sapply 可能是您的 friend :

df <- data.frame( a=sample(10), b=sample(10), c=sample(10) )
df.per.capita <– as.data.frame(
sapply(
df[ colnames(df) != "c" ], function(x){ x/df$c *1000 }
)
)

对于更复杂的情况,你绝对应该看看 plyr 包。

关于r - 在 R 中使用循环创建和处理多个列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13139256/

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