我有以下建议:
# -- create a dataframe
list_columns = ['weight', 'animal', 'age']
list_data = [
[14, 'One Zebra co1 animal', 10],
[4, '2 cats co2 domestic animal', 15],
[100, '3 cats co1 domestic animal', 6],
[400, 'horse co2 animal', 3]
]
df_animals = pd.DataFrame(columns=list_columns, data=list_data)
我想创建另一列,该列包含字符串co
后的前3个字母
在excel中,它将类似于MID(F8;FIND("co";F8;3);3)
,并返回co1 co 2 co1 co2
我几乎可以肯定这可以用熊猫做到,但我还没有找到一种方法来做到这一点
如果起点是固定的,我会做df_animals['Test'] = df_animals['animal'].str[:2]
但在我的情况下是可变的。有人能告诉我实现这一目标的正确途径吗
IIUC,使用extract:
输出
其思想是捕获前3个单词字符(
\w{,3}
),如果它们位于co
之后相关问题 更多 >
编程相关推荐