當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python pyspark Index.is_monotonic用法及代碼示例


本文簡要介紹 pyspark.pandas.Index.is_monotonic 的用法。

用法:

property Index.is_monotonic

如果對象中的值單調遞增,則返回布爾值。

注意

is_monotonic 的當前實現需要多次洗牌和聚合來檢查本地和全局的順序,這可能會很昂貴。在多索引的情況下,所有數據都傳輸到單個節點,目前很容易導致內存不足錯誤。

注意

如果您使用 pandas-on-Spark < 1.7.0 和 PySpark 3.1.1,請禁用 Spark 配置 spark.sql.optimizer.nestedSchemaPruning.enabled 進行多索引。

返回

is_monotonicbool

例子

>>> ser = ps.Series(['1/1/2018', '3/1/2018', '4/1/2018'])
>>> ser.is_monotonic
True
>>> df = ps.DataFrame({'dates': [None, '1/1/2018', '2/1/2018', '3/1/2018']})
>>> df.dates.is_monotonic
False
>>> df.index.is_monotonic
True
>>> ser = ps.Series([1])
>>> ser.is_monotonic
True
>>> ser = ps.Series([])
>>> ser.is_monotonic
True
>>> ser.rename("a").to_frame().set_index("a").index.is_monotonic
True
>>> ser = ps.Series([5, 4, 3, 2, 1], index=[1, 2, 3, 4, 5])
>>> ser.is_monotonic
False
>>> ser.index.is_monotonic
True

支持MultiIndex

>>> midx = ps.MultiIndex.from_tuples(
... [('x', 'a'), ('x', 'b'), ('y', 'c'), ('y', 'd'), ('z', 'e')])
>>> midx  
MultiIndex([('x', 'a'),
            ('x', 'b'),
            ('y', 'c'),
            ('y', 'd'),
            ('z', 'e')],
           )
>>> midx.is_monotonic
True
>>> midx = ps.MultiIndex.from_tuples(
... [('z', 'a'), ('z', 'b'), ('y', 'c'), ('y', 'd'), ('x', 'e')])
>>> midx  
MultiIndex([('z', 'a'),
            ('z', 'b'),
            ('y', 'c'),
            ('y', 'd'),
            ('x', 'e')],
           )
>>> midx.is_monotonic
False

相關用法


注:本文由純淨天空篩選整理自spark.apache.org大神的英文原創作品 pyspark.pandas.Index.is_monotonic。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。