【发布时间】:2020-04-09 00:05:59
【问题描述】:
我想为一列分配另一列的变量 lentgh 切片,但不知何故,它没有按我的预期工作,我不明白为什么:
import numpy as np
import pandas as pd
m = np.array([[1, 'AAAAA'],
[2, 'BBBB'],
[3, 'CCC']])
df = (pd.DataFrame(m, columns = ['id', 's1'])
.assign(
s2 = lambda x: x['s1'].str.slice(start=0, stop=x['s1'].str.len()-1))
)
print(df)
导致
id s1 s2
0 1 AAAAA NaN
1 2 BBBB NaN
2 3 CCC NaN
但是,我希望如下:
id s1 s2
0 1 AAAAA AAAA
1 2 BBBB BBB
2 3 CCC CC
知道这里发生了什么吗?
【问题讨论】: