我在Pandas DataFrame中有一列,其中每一行都有一些包含诸如'senior data consultant'
之类的职位描述的字符串,这些行中大约有1,000,000。我想将此字符串缩短为仅第一个单词(在该示例中为'senior'
)。下面的代码可以正确执行此操作。
def proc_Profession(df):
for row in range(df['Profession'].size):
try:
df['Profession'].iloc[row] = df['Profession'].iloc[row].split(' ')[0]
except AttributeError:
df['Profession'].iloc[row] = 'unknown'
return df
我的问题是这太慢了(需要几个小时),有没有更快的方法呢?
答案 0 :(得分:0)
根据Henry Yik的建议,以下操作明显更快
def proc_Profession(df):
df['Profession'] = df['Profession'].str.split().str[0]
return df