gpt4 book ai didi

R:将矩阵转换为 YES、NO 数据框

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

我有一个这样的矩阵

df <- matrix(c(rep(1,3),rep(2,3)),nrow=3,ncol=2)

df:
[,1] [,2]
[1,] 1 2
[2,] 1 2
[3,] 1 2

我想将每个单元格值转换为YES,如果大于0,则NO

我知道我可以使用

来做到这一点
apply(df, 2, function(x) ifelse(x > 0, "Yes","No")) 

但是我的矩阵非常巨大(百万 * 5000),因此使用 apply 需要非常长的时间

我也尝试过

df <- ifelse(df > 0, "Yes","No")

但是即使这也需要很多时间

我可以通过这个获得更好的性能吗?

最佳答案

这是创建矩阵的一种方法:

df[] <- c("No", "Yes")[(df > 0) + 1]

结果:

     [,1]  [,2] 
[1,] "Yes" "Yes"
[2,] "Yes" "Yes"
[3,] "Yes" "Yes"

关于R:将矩阵转换为 YES、NO 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45687649/

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