我有一個dask系列,我需要刪除infs和nans。 .dropna()
只能使用nans。在numpy/pandas中,我會做類似result = result[np.isfinite(result)]
。在dask-land中建議的等效物是什麼?用布爾數組索引dask對象會導致錯誤。有沒有辦法告訴dask inf
或-inf
應該被視爲空值,例如?如何從dask數據框/系列中刪除infs?
1
A
回答
0
您應該避免使用NumPy函數。這些會觸發計算,未來的dask.dataframe操作會對使用這些結果猶豫不決。
而是使用等價的dask.array函數。這是一個簡單的例子。
In [1]: import numpy as np
...: import pandas as pd
...: import dask.dataframe as dd
...: import dask.array as da
...: df = pd.DataFrame({'x': [0, 1, 2], 'y': [0, np.inf, 5]})
...: df
...:
Out[1]:
x y
0 0 0.000000
1 1 inf
2 2 5.000000
In [2]: ddf = dd.from_pandas(df, npartitions=2)
...: ddf[~da.isinf(ddf.y)].compute()
...:
Out[2]:
x y
0 0 0.0
2 2 5.0
0
OK,我才發現,原來我可以做到以下幾點:
import dask.array as da
result = result[da.isfinite(result)]
一般來說,它看起來像只用da.
數組操作是缺少的部分,我一直在尋找。
相關問題
- 1. 在Numpy數組中刪除NaN和Infs
- 2. 如何從數據框中刪除行?
- 3. 從數據框中刪除列
- 4. 熊貓:如何根據列表從數據框中刪除行?
- 5. 如何通過索引列表從dask數據框中選擇數據?
- 6. 如何從Pandas中的數據框中刪除/省略count列?
- 7. 如何從熊貓數據框中的列表中刪除值?
- 8. 如何從DynamicTimeSeriesCollection中刪除系列?
- 9. 如何使用lapply從數據框列表中刪除空行?
- 10. 如何從Pandas數據框中刪除行列表?
- 11. 如何從Spark數據框中刪除多列?
- 12. 如何刪除'。'從數據框中的列內容?
- 13. 如何從'chr'數據框中刪除列
- 14. 如何從浮點值數據框中列刪除字母
- 15. 如何從列表中刪除空的數據框?
- 16. 如何從數據框中刪除列和行標籤?
- 17. 如何從數據框的列名稱中刪除「.x」?
- 18. 如何複製dask數據框?
- 19. 從HDF5文件列表中創建一個dask數據框
- 20. DASK包成DASK數據幀的列
- 21. 如何根據子集函數從數據框中刪除行?
- 22. 數據清理:如何從熊貓數據框列中刪除某些值?
- 23. 如果列名是nan,Python如何從數據框中刪除整列?Python 3.6
- 24. 生產熊貓系列nofy.arrays從數據幀並行與dask
- 25. 如何從存儲在列表中的多個數據框中刪除列?
- 26. 從數據框中刪除行如果列值
- 27. 刪除數據框中的列
- 28. 使用子集從數據框中刪除列的列表
- 29. Spark - Scala - 根據條件從數據框中刪除列
- 30. 從數據框中刪除停用詞