我在Python3.x中有以下的pandas DataFrame:
有两列,
我的目标是将这些字符串标准化,使它们具有相同的长度,并以问号
以下是输出应该的样子:
如果我能把尾随空格变为
但我不确定如何有效地(1)查找
import pandas as pd
dict1 = {
'ID':['first', 'second', 'third', 'fourth', 'fifth'],
'pattern':['AAABCDEE', 'ABBBBD', 'CCCDE', 'AA', 'ABCDE']
}
df = pd.DataFrame(dict1)
>>> df
ID pattern
0 first AAABCDEE
1 second ABBBBD
2 third CCCDE
3 fourth AA
4 fifth ABCDE
有两列,
ID
和 pattern
。第一行中,pattern
中最长的字符串是 'AAABCDEE'
,长度为 8。我的目标是将这些字符串标准化,使它们具有相同的长度,并以问号
?
补齐尾部空格。以下是输出应该的样子:
>>> df
ID pattern
0 first AAABCDEE
1 second ABBBBD??
2 third CCCDE???
3 fourth AA??????
4 fifth ABCDE???
如果我能把尾随空格变为
NaN
,那么我就可以尝试这样做:df = df.applymap(lambda x: int(x) if pd.notnull(x) else str("?"))
但我不确定如何有效地(1)查找
pattern
中最长的字符串,然后(2)在达到此长度的字符串末尾添加NaN
? 这可能是一种复杂的方法...
Series.str.ljust()
。谢谢你告诉我! - ShanZhengYang