python 實(shí)現(xiàn)添加標(biāo)簽&打標(biāo)簽的操作
普通打標(biāo)簽
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)
使用函數(shù)來(lái)打標(biāo)簽
#標(biāo)注標(biāo)簽 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) #打標(biāo)簽,判斷天數(shù) 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)
補(bǔ)充:python 根據(jù)標(biāo)簽名獲取標(biāo)簽內(nèi)容
看代碼吧~
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 class="item-0"><a href="link1.html" rel="external nofollow" rel="external nofollow" id="places_neighbours__row">9,596,960first item</a></li> <li class="item-1"><a href="link2.html" rel="external nofollow" >second item</a></li> <li class="item-inactive"><a href="link3.html" rel="external nofollow" >third item</a></li> <li class="item-1"><a href="link4.html" rel="external nofollow" id="places_neighbours__row">fourth item</a></li> <li class="item-0"><a href="link5.html" rel="external nofollow" rel="external nofollow" >fifth item</a></li> <li class="good-0"><a href="link5.html" rel="external nofollow" rel="external nofollow" >fifth item</a></li> </ul> <book> <title lang="aaengbb">Harry Potter</title> <price id="places_neighbours__row">29.99</price> </book> <book> <title lang="zh">Learning XML</title> <price>39.95</price> </book> <book> <title>Python</title> <price>40</price> </book> </div> """ # //div/ul/li/a[@id] 選取a標(biāo)簽中帶有id屬性的標(biāo)簽 # //div/ul/li/a 選取所有a標(biāo)簽 # //div/ul/li[2]/a """ / 從根標(biāo)簽開(kāi)始 必須具有嚴(yán)格的父子關(guān)系 // 從當(dāng)前標(biāo)簽 后續(xù)節(jié)點(diǎn)含有即可選出 * 通配符 選擇所有 //div/book[1]/title 選擇div下第一個(gè)book標(biāo)簽的title標(biāo)簽 //div/book[1]/tittle[@lang="zh"] 選擇div下第一個(gè)book標(biāo)簽的title標(biāo)簽并且內(nèi)容是zh的title標(biāo)簽 //div/book/title //book/title //title 具有相同結(jié)果 只不過(guò)選取路徑不一樣 //book/title/@* 將title所有的屬性值選出來(lái) //book/title/text() 將title的內(nèi)容選擇出來(lái),使用內(nèi)置函數(shù) //a[@href="link1.html" rel="external nofollow" rel="external nofollow" and @id="places_neighbours_row"] //div/book/[last()]/title/text() 將最后一個(gè)book元素選出 //div/book[price > 39]/title/text() 將book子標(biāo)簽price數(shù)值大于39的選擇出來(lái) //li[starts-with(@class,'item')] 將class屬性前綴是item的選出來(lái) //title[contains(@lang,"eng")]將title屬性lang含有eng關(guān)鍵字的標(biāo)簽選出 """ html = lxml.html.fromstring(test_data) # 加載任意一個(gè)字符串 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)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python 數(shù)據(jù)可視化pyecharts的使用詳解
這篇文章主要介紹了Python 數(shù)據(jù)可視化pyecharts的使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06深入探究Flask的兩個(gè)高級(jí)特性之藍(lán)圖和JWT認(rèn)證
本文將探討 Flask 的兩個(gè)高級(jí)特性:藍(lán)圖(Blueprints)和 JSON Web Token(JWT)認(rèn)證,藍(lán)圖讓我們可以將應(yīng)用模塊化,以便更好地組織代碼;而 JWT 認(rèn)證是現(xiàn)代 Web 應(yīng)用中常見(jiàn)的一種安全機(jī)制,感興趣的小伙伴跟著小編一起來(lái)看看吧2023-08-08python正則表達(dá)式函數(shù)match()和search()的區(qū)別
match()和search()都是python中的正則匹配函數(shù),那這兩個(gè)函數(shù)有何區(qū)別呢?本文詳細(xì)介紹了這2個(gè)函數(shù)的區(qū)別2021-10-10Python中zip()函數(shù)的簡(jiǎn)單用法舉例
這篇文章主要給大家介紹了關(guān)于Python中zip()函數(shù)的簡(jiǎn)單用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09Python求算數(shù)平方根和約數(shù)的方法匯總
這篇文章主要介紹了 Python求算數(shù)平方根和約數(shù)的方法匯總的相關(guān)資料,需要的朋友可以參考下2016-03-03Django Admin中增加導(dǎo)出CSV功能過(guò)程解析
這篇文章主要介紹了Django Admin中增加導(dǎo)出CSV功能過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09python不使用for計(jì)算兩組、多個(gè)矩形兩兩間的iou方式
今天小編就為大家分享一篇python不使用for計(jì)算兩組、多個(gè)矩形兩兩間的iou方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01