gpt4 book ai didi

r - 即使在将我的文件转换为因子后,为什么我的输出给出因子(0)30956 级别?

转载 作者:行者123 更新时间:2023-12-01 05:50:16 25 4
gpt4 key购买 nike

我是 R 的新手,正在处理以下数据集:

我有一个名为 zippopinc 的文件

重复:

head(zippopinc)

Year Zip Total_Population Median_Income City State
1 1 2017 ZCTA5 00601 17599 11757 Adjuntas PR
2 2 2017 ZCTA5 00602 39209 16190 Aguada PR
3 3 2017 ZCTA5 00603 50135 16645 Aguadilla PR
4 4 2017 ZCTA5 00606 6304 13387 Maricao PR
5 5 2017 ZCTA5 00610 27590 18741 Anasco PR
6 6 2017 ZCTA5 00612 62566 17744 Arecibo PR
Poptoincomeratio
1.4968955
2.4218036
3.0120156
0.4709046
1.4721733
3.5260370

poptoincomeratio 基本上是 Total_Population/Median_Income

我的目标是找到哪个邮政编码具有最高的 Poptoincomeratio:

我的输入:

max(sapply(zippopinc$Poptoincomeratio, max))

输出:

4.454182

所以我试过了,

zippopinc$Zip[demograph_ratio$Poptoincomeratio == 4.454182]

但这给了我:

factor(0)
30956 Levels

然后我尝试将 zipopinc 转换为一个因子,但出现以下错误:

> as.factor(zippopinc)
Error in sort.list(y) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?

我该如何解决这个问题?

最佳答案

如果您想查找哪个邮政编码具有最高的 Poptoincomeratio,请执行以下操作:

zippopinc$Zip[which.max(zippopinc$Poptoincomeratio)]

使用当前方法不会产生任何输出的原因是比较浮点值存在一些限制。在这里阅读更多内容

即使对于共享示例,我们也可以看到 3.5260370 是 Poptoincomeratio 列中的最高值,但是当我们比较我们得到的值时

zippopinc$Poptoincomeratio == 3.5260370
#[1] FALSE FALSE FALSE FALSE FALSE FALSE

但是如果你使用 which.max 它返回最高的 Zip

zippopinc$Zip[which.max(zippopinc$Poptoincomeratio)]
#[1] 612

关于r - 即使在将我的文件转换为因子后,为什么我的输出给出因子(0)30956 级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55309993/

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