• pandas 中的DataFrame.where()使用


    pandas.DataFrame.where

    DataFrame.where(cond, other=nan, inplace=False, axis=None, level=None, try_cast=False, raise_on_error=True)

    inplace : boolean, default False

    Whether to perform the operation in place on the data

    axis : alignment axis if needed, default None

    level : alignment level if needed, default None

    try_cast : boolean, default False

    try to cast the result back to the input type (if possible),

    raise_on_error : boolean, default True

    Whether to raise on invalid data types (e.g. trying to where on strings)

    also see DataFrame.mask()

    Notes

    The where method is an application of the if-then idiom. For each element in the calling DataFrame, if cond is True the element is used; otherwise the corresponding element from the DataFrame other is used.

    The signature for DataFrame.where() differs from numpy.where(). Roughly df1.where(m, df2) is equivalent to np.where(m, df1, df2).

    For further details and examples see the where documentation in indexing.

    Examples

    >>> s = pd.Series(range(5))
    >>> s.where(s > 0)
    0    NaN
    1    1.0
    2    2.0
    3    3.0
    4    4.0
    
    >>> df = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
    >>> m = df % 3 == 0
    >>> df.where(m, -df)
       A  B
    0  0 -1
    1 -2  3
    2 -4 -5
    3  6 -7
    4 -8  9
    >>> df.where(m, -df) == np.where(m, df, -df)
          A     B
    0  True  True
    1  True  True
    2  True  True
    3  True  True
    4  True  True
    >>> df.where(m, -df) == df.mask(~m, -df)
          A     B
    0  True  True
    1  True  True
    2  True  True
    3  True  True
    4  True  True

    参考文档numpy或pandas文档

    import numpy as np arr = np.random.randn(4,4)
    print(arr)
    print(np.where(arr>0,2,-2))
    print(np.where(arr>0,2,arr))

     
  • 相关阅读:
    python匿名函数lambda用法
    python递归函数
    python中的全局变量与局部变量
    元组,字典,集合
    WKWebView 与 UIWebView
    JSON数组字典解析
    iOS使用Instruments的工具
    CocoaPods Mac App的安装和使用
    Mac环境下svn的使用(转)
    数据存储-- Core Data的使用(二)
  • 原文地址:https://www.cnblogs.com/onemorepoint/p/9099279.html
Copyright © 2020-2023  润新知