99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線(xiàn)電話(huà):13121318867

登錄
首頁(yè)精彩閱讀R語(yǔ)言字符串的處理(解析+案例)
R語(yǔ)言字符串的處理(解析+案例)
2017-07-10
收藏

R語(yǔ)言字符串的處理(解析+案例)

數(shù)據(jù)分析師的日常工作就是數(shù)據(jù)預(yù)處理,數(shù)據(jù)預(yù)處理最經(jīng)常遇到的問(wèn)題就是字符串的處理,這部分很難,我以前看過(guò)一些R的書(shū)和一些技術(shù)博客,現(xiàn)在依舊發(fā)現(xiàn)有些細(xì)節(jié)做不好,下面我就轉(zhuǎn)載別人的一些字符串處理的方法,我會(huì)在下面說(shuō)說(shuō)我的看法:

字符串分割函數(shù):strsplit( )

字符串連接函數(shù):paste( )

計(jì)算字符串長(zhǎng)度:nchar( )

字符串截取函數(shù):substr( )及substring( )

字符串替換函數(shù):chartr( )

大小寫(xiě)轉(zhuǎn)換函數(shù):toupper( )、tolower( )及casefold( )


以目前的工作來(lái)說(shuō),前4個(gè)至少每次都可以用到其中的一兩個(gè),5和6不經(jīng)常用。

1:strsplit( )函數(shù)用于字符串分割,其中split是分割參數(shù)。所得結(jié)果以默認(rèn)以list形式展示。

用法:strsplit("字符串",sep=“”(分隔符,可省略sep=,直接寫(xiě)“”雙引號(hào)里面的內(nèi)容))

2:paste( )函數(shù)用于字符串連接,其中sep負(fù)責(zé)兩組字符串間的連接;collapse負(fù)責(zé)一組字符串內(nèi)部的連接。

用法:paste(..., sep = " ", collapse = NULL)    (舉例:A<-c(a,b),B<-c(1,2),paste(A,B,sep="_",collapse=":")結(jié)果為:A_1:B_2。

3:很好理解,用法+案例:nchar(“abc”)結(jié)果為3。n是char的長(zhǎng)度計(jì)算。

4:substr( )函數(shù)和substring( )函數(shù)是截取字符串最常用的函數(shù),兩個(gè)函數(shù)功能方面是一樣的,只是其中參數(shù)設(shè)置不同。

substr( )函數(shù):必須設(shè)置參數(shù)start和stop,如果缺少將出錯(cuò)。用法:substr(“字符串”,start=數(shù)字,stop=數(shù)字)下同。

substring( )函數(shù):可以只設(shè)置first參數(shù),last參數(shù)若不設(shè)置,則默認(rèn)為1000000L,通常是指字符串的最大長(zhǎng)度。

這個(gè)也很少理解:substr("abcd",2,3)結(jié)果為bc;substring("abcd",2)結(jié)果為bcd。

注意:substr和substring的區(qū)別就是最后一個(gè)參數(shù):前者是必須存在stop結(jié)尾,后者隨意。

5:chartr( )函數(shù):將原有字符串中特定字符替換成所需要的字符。

其中參數(shù)old表示原有字符串中內(nèi)容;new表示替換后的字符內(nèi)容
用法:chartr(old= ,new= ,數(shù)據(jù)框)
案列:x<-c(abc),chartr(old="b",new="s",x)結(jié)果就是asc。
6:toupper( )函數(shù):將字符串統(tǒng)一轉(zhuǎn)換為大寫(xiě)。

tolower( )函數(shù):將字符串統(tǒng)一轉(zhuǎn)換為小寫(xiě)。

casefold( )函數(shù):根據(jù)參數(shù)轉(zhuǎn)換大小寫(xiě)。

前面2個(gè)函數(shù)比較簡(jiǎn)單,說(shuō)說(shuō)第三個(gè):casefold(向量,upper=T或FALSE),upper=T全是大寫(xiě),反之。

寫(xiě)這個(gè)有2個(gè)好處,1是可以幫助別人,2是自我鞏固,當(dāng)然重點(diǎn)是2自我鞏固。


數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線(xiàn)
立即咨詢(xún)
客服在線(xiàn)
立即咨詢(xún)
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶(hù)后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見(jiàn):http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }