Pandas 熊猫中的字符串解析
我正在处理一个数据帧,其中一列的值如下- 领域 可销售的\u电子邮件\u状态\u m10 电子邮件\u可用性\u状态\u m11 结束60至89日dpd m11 电子邮件\u可用性\u状态\u m1 与Pandas 熊猫中的字符串解析,pandas,string,parsing,Pandas,String,Parsing,我正在处理一个数据帧,其中一列的值如下- 领域 可销售的\u电子邮件\u状态\u m10 电子邮件\u可用性\u状态\u m11 结束60至89日dpd m11 电子邮件\u可用性\u状态\u m1 与n=1一起使用,用于按最后一个拆分: df[['text1','text2']] = df['field'].str.rsplit('_', n=1, expand=True) print (df) field
n=1
一起使用,用于按最后一个拆分:
df[['text1','text2']] = df['field'].str.rsplit('_', n=1, expand=True)
print (df)
field text1 text2
0 marketable_email_status_m10 marketable_email_status m10
1 email_availability_status_m11 email_availability_status m11
2 ending_ar_60_to_89_dpd_m11 ending_ar_60_to_89_dpd m11
3 email_availability_status_m1 email_availability_status m1
请尝试以下功能
df[["text1","text2"]] = df['field'].str.extract(r'^(.*)_(.*)$')
说明:
- 在数据帧的
字段
列上应用df.str.extract
函数
- 然后使用2个捕获组在DataFrame中创建2个新列,分别命名为
text1
和text2
- 第一个捕获组拥有所有信息,直到
。
,第二个捕获组拥有剩余信息(根据OP的要求)
- 将创建的捕获组的值保存到名为
text1
和text2
的字段中
输出如下:
field text1 text2
0 marketable_email_status_m10 marketable_email_status m10
1 email_availability_status_m11 email_availability_status m11
2 ending_ar_60_to_89_dpd_m11 ending_ar_60_to_89_dpd m11
3 email_availability_status_m1 email_availability_status m1