最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

R語言:實現(xiàn)因子與字符串的互轉

 更新時間:2021年04月19日 11:40:51   作者:蟻方陣  
這篇文章主要介紹了R語言:實現(xiàn)因子與字符串的互轉操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在導入大批量數(shù)據(jù)時,如果沒有顯式地指定“stringsAsFactors = FALSE”,默認會將所有的字符串轉換為因子,導致數(shù)據(jù)處理速度較慢。

示例數(shù)據(jù)如下:

name,math,english,sex,year
"yiifaa",65,68,"M",2018
"yiifee",95,98,"F",2018
"guagua",75,78,"M",2018
"MM",85,88,"F",2018

查看數(shù)據(jù)概要,發(fā)現(xiàn)默認將字符串轉換為因子,并進行了分組計數(shù)(這也是處理速度較慢的原因之一)

概要如下:

  name        math         english     sex        year     
 guagua:1   Min.   :65.0   Min.   :68.0   F:2   Min.   :2018  
 MM    :1   1st Qu.:72.5   1st Qu.:75.5   M:2   1st Qu.:2018  
 yiifaa:1   Median :80.0   Median :83.0         Median :2018  
 yiifee:1   Mean   :80.0   Mean   :83.0         Mean   :2018  
            3rd Qu.:87.5   3rd Qu.:90.5         3rd Qu.:2018  
            Max.   :95.0   Max.   :98.0         Max.   :2018  

但這樣的分組計數(shù)并沒有意義,所以需要利用“as.character”轉換為字符,如下:

#! /usr/bin/env RScript
setwd("D:/Workspace/R-Works/R-Stat")
scores <- read.table("Score.txt", header = TRUE, sep = ",", quote="\"", encoding = "UTF-8", stringsAsFactors = TRUE)
# 將因子轉換為字符
scores$name <- as.character(scores$name)
# 多轉一個進行測試
scores$sex <- as.character(scores$sex)

再次查看概要,如下:

name                math         english         sex                 year     
 Length:4           Min.   :65.0   Min.   :68.0   Length:4           Min.   :2018  
 Class :character   1st Qu.:72.5   1st Qu.:75.5   Class :character   1st Qu.:2018  
 Mode  :character   Median :80.0   Median :83.0   Mode  :character   Median :2018  
                    Mean   :80.0   Mean   :83.0                      Mean   :2018  
                    3rd Qu.:87.5   3rd Qu.:90.5                      3rd Qu.:2018  
                    Max.   :95.0   Max.   :98.0                      Max.   :2018  

可以看到,概要中已經(jīng)沒有了分組計數(shù),但多了總數(shù)計量,如果要恢復分組計數(shù),則需要重新創(chuàng)建因子,如下:

scores$sex <- factor(scores$sex, levels=c("M", "F"), ordered = TRUE)

結論

在導入大批量數(shù)據(jù)時,為了提高性能,盡可能分兩步走:

1. 顯式指定“stringsAsFactors = FALSE”;

2. 依次將所需要的數(shù)據(jù)列(向量)轉換為因子;

補充:R語言:變量名稱和字符串的轉換

在R語言中,經(jīng)常會遇到變量名稱和字符串相互轉換的問題。

比如說,進行1000次循環(huán)運算,并將運算結果存儲在1000個變量中,如x_1, x_2, ... , x_1000。這時候可以使用assign()函數(shù),示例如下:

> a
錯誤: 找不到對象'a'
> assign('a', 1)
> a
[1] 1

上面的例子將字符'a'轉變?yōu)樽兞縜,并將其賦值為1 。

相反,如果我們想遍歷一個變量序列,并對其中的每一個變量都進行操作,該怎么辦呢?我們可以使用get()函數(shù)。示例如下:

> a <- 1
> b <- 2
> c <- 3
> sequence <- c('a', 'b', 'c')
> for (var in sequence){print(var + 10)}

錯誤于var + 10 : 二進列運算符中有非數(shù)值參數(shù)

> for (var in sequence){print(get(var) + 10)}
[1] 11
[1] 12
[1] 13

我們可以發(fā)現(xiàn),get函數(shù)將字符var轉變?yōu)樽兞?,并根?jù)變量的值進行后續(xù)操作。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關文章

  • R語言-如何給直方圖加標簽

    R語言-如何給直方圖加標簽

    這篇文章主要介紹了R語言-如何給直方圖加標簽,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言中dnorm,pnorm,qnorm和rnorm的區(qū)別淺析

    R語言中dnorm,pnorm,qnorm和rnorm的區(qū)別淺析

    正在學習R語言統(tǒng)計學的小伙伴,可能會被各種專有名詞所困擾,下面這篇文章主要給大家介紹了關于R語言中dnorm,pnorm,qnorm和rnorm區(qū)別的相關資料,需要的朋友可以參考下
    2022-12-12
  • R語言實現(xiàn)嶺回歸的示例代碼

    R語言實現(xiàn)嶺回歸的示例代碼

    本文主要介紹了R語言實現(xiàn)嶺回歸的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • R語言運算符知識點講解

    R語言運算符知識點講解

    在本篇文章里小編給大家分享了一篇關于R語言運算符知識點講解內(nèi)容,有興趣的朋友們可以參考下。
    2021-03-03
  • Rcpp和RcppArmadillo創(chuàng)建R語言包的實現(xiàn)方式

    Rcpp和RcppArmadillo創(chuàng)建R語言包的實現(xiàn)方式

    這篇文章主要為大家介紹了Rcpp和RcppArmadillo創(chuàng)建R包實現(xiàn)方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2021-11-11
  • R語言中corrplot標題居中及eps格式輸出

    R語言中corrplot標題居中及eps格式輸出

    由于論文的需要,很多R語言繪圖需要eps格式矢量圖的方式進行輸出,同時最近也需要繪制相關性圖,因此決定寫個博客作為記錄,有需要的朋友可以借鑒參考下
    2021-11-11
  • R語言which函數(shù)介紹及Rcpp改寫詳解

    R語言which函數(shù)介紹及Rcpp改寫詳解

    有的時候我們需要找到一個數(shù)據(jù)子向量中的位置,我們就可以使用which函數(shù),下面這篇文章主要給大家介紹了關于R語言which函數(shù)介紹及Rcpp改寫的相關資料,需要的朋友可以參考下
    2022-07-07
  • R語言判斷語句的使用詳解

    R語言判斷語句的使用詳解

    這篇文章主要介紹了R語言判斷語句的使用詳解,幫助大家更好的理解和學習使用R語言,感興趣的朋友可以了解下
    2021-03-03
  • R語言邏輯型運算的實現(xiàn)

    R語言邏輯型運算的實現(xiàn)

    本文主要介紹了R語言邏輯型運算,邏輯型是 R 的基本數(shù)據(jù)類型之一,只有兩個值 TRUE 和 FALSE, 缺失時為 NA,具有一定的參考價值,感興趣的可以了解一下
    2022-03-03
  • R語言入門之安裝R和Rstuido軟件

    R語言入門之安裝R和Rstuido軟件

    這篇文章主要介紹了R語言入門之安裝R和Rstuido軟件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03

最新評論

龙陵县| 天全县| 武安市| 司法| 眉山市| 宁蒗| 许昌县| 乡宁县| 星子县| 岫岩| 宣城市| 察隅县| 五寨县| 阜新市| 东平县| 公安县| 巫山县| 巴青县| 伊通| 防城港市| 日土县| 东兴市| 湘阴县| 濮阳县| 松江区| 土默特左旗| 遵义县| 万源市| 彭阳县| 修文县| 河曲县| 海门市| 读书| 自治县| 永顺县| 嵩明县| 罗田县| 巧家县| 博乐市| 宁晋县| 渝北区|