use*_*042 3 python maxlength string-length dataframe pandas
我在Python中使用Pandas库,我正在尝试增加其中包含文本的列的长度,使其长度相同.我试图通过添加一个特定的字符(这将是白色空间,在这个例子中我将使用"_")多次,直到它达到该列的最大长度.
例如:
Col1_Before
A
B
A1R
B2
AABB4
Run Code Online (Sandbox Code Playgroud)
Col1_After
A____
B____
A1R__
B2___
AABB4
Run Code Online (Sandbox Code Playgroud)
到目前为止,我已经做到这一点(使用上表作为示例).它是下一个部分(和我坚持的部分).
df['Col1_Max'] = df.Col1.map(lambda x: len(x)).max()
df['Col1_Len'] = df.Col1.map(lambda x: len(x))
df['Difference_Len'] = df ['Col1_Max'] - df ['Col1_Len']
Run Code Online (Sandbox Code Playgroud)
我可能还没有解释好自己,因为我还在学习.如果这令人困惑,请告诉我,我会澄清.
考虑一下 pd.Series s
s = pd.Series(['A', 'B', 'A1R', 'B2', 'AABB4'])
Run Code Online (Sandbox Code Playgroud)
解决方案
使用str.ljust
m = s.str.len().max()
s.str.ljust(m, '_')
0 A____
1 B____
2 A1R__
3 B2___
4 AABB4
dtype: object
Run Code Online (Sandbox Code Playgroud)
为你的情况
m = df.Col1.str.len().max()
df.Col1 = df.Col1.ljust(m '_')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1080 次 |
| 最近记录: |