Giả sử tôi có một khung dữ liệu df
với một cột value
giữ một số giá trị nổi và một số NaN
. Làm cách nào tôi có thể nhận được một phần của khung dữ liệu nơi chúng tôi có NaN
sử dụng cú pháp truy vấn?Truy vấn NaN và các tên khác trong Pandas
Sau đây, ví dụ, không hoạt động:
df.query('(value < 10) or (value == NaN)')
tôi nhận được name NaN is not defined
(tương tự cho df.query('value ==NaN')
)
Nói chung, là có cách nào để sử dụng tên NumPy trong truy vấn, chẳng hạn như inf
, nan
, pi
, e
, v.v ...?
Nên có cách tốt hơn để làm điều này ... nhưng tôi thích bản hack. –
Bí quyết '@ nan'" là * không * hoạt động đối với các vars 'numpy', ví dụ: 'nan = numpy.nan'. Nó * làm * để lọc ra các chuỗi * khác *. – javadba
@javadba: er, toàn bộ điểm của phần đó là để chỉ ra rằng '(giá trị == @nan)' _doesn't_ hoạt động, bởi vì nan không bằng chính nó, do đó việc sử dụng 'giá trị! = Giá trị' của tôi lừa. – DSM