簡體   English   中英

根據 isclose() 條件從數據框中選擇行

[英]Select rows from dataframe based on isclose() condition

我有一個帶有“Alpha”和“Method”列名稱的數據orig_df

num是一個帶有一些浮點錯誤的浮點數。 例如,它是 1.1400000000000001。

同時,“Alpha”值被截斷為 1.14。

因此,我想返回所有行,使得orig_df["Alpha"]num接近(並且該method匹配某些字符串method_type ,但這不太相關)。

到目前為止,我有:

temp_df = orig_df[
                (math.isclose(orig_df["Alpha"], num))
                & (orig_df["Method"] == method_type)
            ]

但后來我收到錯誤

TypeError: cannot convert the series to <class 'float'>

我怎樣才能解決這個問題?

math.isclose不是一個可以與pandasnumpy數組配合的函數。

你需要numpy.isclose

temp_df = orig_df[
                (np.isclose(orig_df["Alpha"], num))
                & (orig_df["Method"] == method_type)
            ]

在這種情況下npnumpy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM