91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在R語言中將因子轉換成字符串

發布時間:2021-04-19 16:25:03 來源:億速云 閱讀:796 作者:Leah 欄目:開發技術

這篇文章將為大家詳細講解有關怎么在R語言中將因子轉換成字符串,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

示例數據如下:

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

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

概要如下:

  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

但這樣的分組計數并沒有意義,所以需要利用“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

可以看到,概要中已經沒有了分組計數,但多了總數計量,如果要恢復分組計數,則需要重新創建因子,如下:

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

結論

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

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

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

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

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

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

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

上面的例子將字符'a'轉變為變量a,并將其賦值為1 。

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

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

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

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

關于怎么在R語言中將因子轉換成字符串就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汾阳市| 建湖县| 内丘县| 三江| 同江市| 兴海县| 高尔夫| 奉新县| 常宁市| 温宿县| 新乐市| 西丰县| 阿尔山市| 夏津县| 敦化市| 咸丰县| 上林县| 鄂伦春自治旗| 丹凤县| 绥德县| 苍溪县| 盐城市| 建宁县| 曲松县| 沙河市| 东至县| 壤塘县| 孟连| 汾西县| 锡林浩特市| 内黄县| 冷水江市| 名山县| 全州县| 沈丘县| 黄山市| 漳浦县| 旬邑县| 桐柏县| 甘南县| 陆河县|