gpt4 book ai didi

dataframe - 在Julia DataFrames中测试NA的正确方法

转载 作者:行者123 更新时间:2023-12-03 08:27:34 25 4
gpt4 key购买 nike

在Julia数据帧包中测试数据帧中的值是否为NA的正确方法是什么?

到目前为止,我发现typeof(var) == NAtype可以工作,但是有没有更优雅的方法呢?

最佳答案

为此使用typeof(var) == NAtype很尴尬,特别是因为它没有向量化。

测试NA值的规范方法是使用称为isna的(矢量化)函数。

例子

让我们在NA列中生成一个带有一些B值的玩具DataFrame:

julia> using DataFrames

julia> df = DataFrame(A = 1:10, B = 2:2:20)
10x2 DataFrame
| Row | A | B |
|-----|----|----|
| 1 | 1 | 2 |
| 2 | 2 | 4 |
| 3 | 3 | 6 |
| 4 | 4 | 8 |
| 5 | 5 | 10 |
| 6 | 6 | 12 |
| 7 | 7 | 14 |
| 8 | 8 | 16 |
| 9 | 9 | 18 |
| 10 | 10 | 20 |

julia> df[[1,4,8],symbol("B")] = NA
NA

julia> df
10x2 DataFrame
| Row | A | B |
|-----|----|----|
| 1 | 1 | NA |
| 2 | 2 | 4 |
| 3 | 3 | 6 |
| 4 | 4 | NA |
| 5 | 5 | 10 |
| 6 | 6 | 12 |
| 7 | 7 | 14 |
| 8 | 8 | NA |
| 9 | 9 | 18 |
| 10 | 10 | 20 |

现在,让我们假装我们不知道DataFrame的内容,并询问例如以下问题:

Does column B contain an NA values?


typeof方法不起作用,在这里:
julia> typeof(df[:,symbol("B")]) == NAtype
false
isna函数更合适:
julia> any(isna(df[:,symbol("B")]))
true

关于dataframe - 在Julia DataFrames中测试NA的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28153648/

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