python 实现添加标签&打标签的操作

这篇文章主要介绍了python 实现添加标签&打标签的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

普通打标签

 odue_df=df_train_stmt.loc[(df_train_stmt.AGE3>0)|(df_train_stmt.AGE4>0)|(df_train_stmt.AGE5>0)|(df_train_stmt.AGE6>0),['XACCOUNT']].drop_duplicates() odue_df['label']=1 cust_df=df_acct[['CUSTR_NBR','XACCOUNT']].drop_duplicates() #做合并 df_y=pd.merge(cust_df,odue_df,how='left',on='XACCOUNT').groupby('CUSTR_NBR').agg({'label':max}).reset_index().fillna(0) 

使用函数来打标签

 #标注标签 Label def label(row): if row['Date_received'] == 'null': return -1 if row['Date'] != 'null': td = pd.to_datetime(row['Date'], format='%Y%m%d') - pd.to_datetime(row['Date_received'], format='%Y%m%d') if td <= pd.Timedelta(15, 'D'): return 1 return 0 dfoff['label'] = dfoff.apply(label, axis=1) #打标签,判断天数 def get_label(s): s = s.split(':') if s[0]=='null': return 0 elif (date(int(s[0][0:4]),int(s[0][4:6]),int(s[0][6:8]))-date(int(s[1][0:4]),int(s[1][4:6]),int(s[1][6:8]))).days<=15: return 1 else: return -1 dataset2.label = dataset2.label.apply(get_label) 

补充:python 根据标签名获取标签内容

看代码吧~

 import re import json import requests from bs4 import BeautifulSoup import lxml.html from lxml import etree result = requests.get('http://example.webscraping.com/places/default/view/Algeria-4') with open('123.html', 'wb') as f: f.write(result.content) # print(parse_regex(result.text)) test_data = """  """ # //div/ul/li/a[@id]  选取a标签中带有id属性的标签 # //div/ul/li/a 选取所有a标签 # //div/ul/li[2]/a """ / 从根标签开始  必须具有严格的父子关系 // 从当前标签  后续节点含有即可选出 * 通配符 选择所有 //div/book[1]/title  选择div下第一个book标签的title标签 //div/book[1]/tittle[@lang="zh"] 选择div下第一个book标签的title标签并且内容是zh的title标签 //div/book/title //book/title //title 具有相同结果 只不过选取路径不一样 //book/title/@* 将title所有的属性值选出来 //book/title/text() 将title的内容选择出来,使用内置函数 //a[@href="link1.html" rel="external nofollow"  rel="external nofollow"  and @id="places_neighbours_row"] //div/book/[last()]/title/text() 将最后一个book元素选出 //div/book[price > 39]/title/text() 将book子标签price数值大于39的选择出来 //li[starts-with(@class,'item')] 将class属性前缀是item的选出来 //title[contains(@lang,"eng")]将title属性lang含有eng关键字的标签选出 """ html = lxml.html.fromstring(test_data)  # 加载任意一个字符串 html_data = html.xpath('//title[contains(@lang,"eng")]')  # xpath 查找路径 # print(dir(html_data[0]))  # 查看html_data有什么功能 print(html_data) for i in html_data: print(i.text)

以上就是python 实现添加标签&打标签的操作的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » python