pandas.Series.str.cat #
- 系列.str。cat ( other = None , sep = None , na_rep = None , join = 'left' ) [来源] #
使用给定的分隔符连接系列/索引中的字符串。
如果指定了其他,则此函数将按元素连接系列/索引和其他元素。如果未传递其他值,则系列/索引中的所有值都将连接成具有给定sep 的单个字符串。
- 参数:
- 其他Series、Index、DataFrame、np.ndarray 或类似列表
Series、Index、DataFrame、np.ndarray(一维或二维)和其他类似列表的字符串必须与调用 Series/Index 具有相同的长度,但索引对象(即 Series/Index/DataFrame)除外如果join不是 None。
如果 other 是类似列表,包含 Series、Index 或 np.ndarray (1-dim) 的组合,则所有元素都将被解包,并且必须单独满足上述条件。
如果 other 为 None,则该方法返回调用 Series/Index 中所有字符串的串联。
- sep字符串,默认 ''
不同元素/列之间的分隔符。默认情况下使用空字符串'' 。
- na_rep str 或 None,默认 None
为所有缺失值插入的表示形式:
如果na_rep为 None,而other为 None,则结果中将忽略系列/索引中的缺失值。
如果na_rep为 None,且other不是 None,则任何列中包含缺失值的行(在串联之前)将在结果中包含缺失值。
- join {'left', 'right', 'outer', 'inner'}, 默认 'left'
确定调用系列/索引和其他任何系列/索引/数据帧之间的连接样式(没有索引的对象需要匹配调用系列/索引的长度)。要禁用对齐,请在其他任何 Series/Index/DataFrame 上使用.values。
- 返回:
- str、系列或索引
如果other为 None,则返回str ,否则 返回对象的Series/Index (与调用者类型相同)。
例子
当不传递other时,所有值都连接成一个字符串:
>>> s = pd.Series(['a', 'b', np.nan, 'd']) >>> s.str.cat(sep=' ') 'a b d'
默认情况下,系列中的 NA 值将被忽略。使用na_rep,可以给它们一个表示:
>>> s.str.cat(sep=' ', na_rep='?') 'a b ? d'
如果指定了其他值,则相应的值将与分隔符连接起来。结果将是一系列字符串。
>>> s.str.cat(['A', 'B', 'C', 'D'], sep=',') 0 a,A 1 b,B 2 NaN 3 d,D dtype: object
缺失值将在结果中保持缺失状态,但可以再次使用na_rep表示
>>> s.str.cat(['A', 'B', 'C', 'D'], sep=',', na_rep='-') 0 a,A 1 b,B 2 -,C 3 d,D dtype: object
如果未指定sep,则将值连接起来而不分隔。
>>> s.str.cat(['A', 'B', 'C', 'D'], na_rep='-') 0 aA 1 bB 2 -C 3 dD dtype: object
具有不同索引的系列可以在串联之前对齐。join关键字的工作方式 与其他方法一样。
>>> t = pd.Series(['d', 'a', 'e', 'c'], index=[3, 0, 4, 2]) >>> s.str.cat(t, join='left', na_rep='-') 0 aa 1 b- 2 -c 3 dd dtype: object >>> >>> s.str.cat(t, join='outer', na_rep='-') 0 aa 1 b- 2 -c 3 dd 4 -e dtype: object >>> >>> s.str.cat(t, join='inner', na_rep='-') 0 aa 2 -c 3 dd dtype: object >>> >>> s.str.cat(t, join='right', na_rep='-') 3 dd 0 aa 4 -e 2 -c dtype: object
有关更多示例,请参见此处。