我正在寻找Series.str.zfill(width)
方法的自定义版本。此方法在字符串中添加零,以使字符串具有width
个字符。我正在寻找能够做到这一点的东西,但是使用任何字符(或字符序列),不仅仅是0.例如,从左边开始需要多次添加' - ',以便字符串有width
个字符
答案 0 :(得分:3)
我认为您正在寻找以width
和fillchar
作为参数的Series.str.rjust
:
在系列/索引中添加字符串的左侧 字符。
答案 1 :(得分:1)
您可以在下面定义left_fill
之类的自定义函数,并使用pandas.Series.apply
将其映射到整个系列。
import pandas as pd
s = pd.Series(['foo', 'bar', 'baz', 'apple'])
def left_fill(string, char, length):
while len(string) < length:
string = char + string
return string
s.apply(left_fill, args = ('-', 5))
但是,正如评论中所提到的,您最好使用pandas
内置rjust
方法而不是创建自己的方法!我只是另一个性能较差的例子。