df=pd.DataFrame({'A':['abcde','fghij','klmno','pqrst'], 'B':[1,2,3,4]})
我想把A列按B列分片,例如:abcde[:1]=a, klmno[:3]=klm
但有两种说法都失败了:
TypeError: string indices must be integers
以及
df['new_column']=df['A'].str[:df['B']]
new_column
返回NaN
尝试获取new_column
:
A B new_column
0 abcde 1 a
1 fghij 2 fg
2 klmno 3 klm
3 pqrst 4 pqrs
非常感谢你
通过使用
zip
。希望这个解决方案对您有帮助。在您需要在^{} 方法中使用
axis=1
来遍历行:使用
^{pr2}$zip
是一个不那么惯用但通常更快的解决方案:^{3}$
相关问题 更多 >
编程相关推荐