代码之家  ›  专栏  ›  技术社区  ›  LondonRob

Pandas系列拆分n次

  •  4
  • LondonRob  · 技术社区  · 12 年前

    我想分一份 pandas.Series 第一 只有一段空白。

    pd.Series.str.split 提供了 n 参数,根据内联帮助类型,它应该指定要执行的拆分次数。(上面写着 Both 0 and -1 will be interpreted as return all splits 在注释中,但没有实际指定它的作用!)

    无论如何,它似乎不起作用:

    >>> x = pd.DataFrame(['Split Once', 'Split Once As Well!'])
    >>> x[0].str.split(n=1)
    0               [Split, Once]
    1    [Split, Once, As, Well!]
    
    1 回复  |  直到 12 年前
        1
  •  6
  •   behzad.nouri    12 年前

    这似乎是一个bug;您需要指定 pat 因此它尊重 n :

    x[0].str.split( n=1, pat=' ' )
    

    这些是源代码中显示它忽略的行 n 如果 拍打 None :

    # pandas/core/strings.py
    def str_split(arr, pat=None, n=None):
        if pat is None:
            if n is None or n == 0:
                n = -1
            f = lambda x: x.split()
    ...
    

    编辑:报告日期 github