
作者:丁點helper
來源:丁點幫你
回憶一下上一講用到的例子:
輸入數據的代碼在上一講詳細講解過,這里總結如下:
age <- c(25, 34, 59, 60, 20) #患者年齡type <- c(1, 2, 2, 2, 1) #糖尿病類型status <- c("poor", "improved", "excellent", "poor", "excellent") #病情comorbidity<- c(TRUE, FALSE, FALSE, TRUE, FALSE) #出現并發癥
age、type、status、comorbidity中分別僅有一種數據類型,它們都是向量。本文介紹生成向量之后,如何對其進行簡單的操作。
1. 查看與改變向量的數據類型
看到一個向量,首先要搞清楚其中包含的數據類型。就本例而言,從表面看也很容易區分,但實際上一項統計分析工作用到的向量可能很多,用函數class()可以快速知曉某向量的數據類型,例如:
class(age) [1] "numeric"class(type) [1] "numeric"class(status) [1] "character"class(comorbidity)[1] "logical"
不同類型的數據可以根據需要互相轉換,用as.目標數據類型()函數:
as.numeric() #將括號中的內容轉變為數值型數據 as.character() #轉變為字符型as.logical() #轉變為邏輯型as.factor() #轉變為因子型
所以也可用as.character()將type中的數值型數據轉變為字符型:
type[1] 1 2 2 2 1class(type) [1] "numeric" type <- as.character(type) # 注意要將新的結果賦值給typetype[1] "1" "2" "2" "2" "1"class(type)[1] "character"
之前講過,將定性變量(即分類變量)以因子的形式輸入會有助于后續的統計分析工作,factor()這個函數可以幫我們把數據轉變為因子型:
type <- c(1, 2, 2, 2, 1) type <- factor(type) type[1] 1 2 2 2 1 Levels: 1 2class(type)[1] "factor"
用1和2這樣的阿拉伯數字其實不太利于準確地表達數據內容,可以給原來的1和2加上標簽:
type <- factor(type, levels = c("1", "2"), labels = c("Type 1", "Type 2")) type[1] Type 1 Type 2 Type 2 Type 2 Type 1 Levels: Type 1 Type 2
所以在輸入定性變量(分類變量)時可以采用這種簡便方法。
再看另一個例子:
status[1] "poor" "improved" "excellent" "poor" "excellent" status <- factor(status)status[1] poor improved excellent poor excellentLevels: excellent improved poorclass(status)[1] "factor"
由于status是一個有序分類變量,所以在轉變為因子時還應體現其順序:
status <- factor(status, levels = c('poor', 'improved','excellent'),ordered = TRUE) status[1] poor improved excellent poor excellentLevels: poor < improved < excellent
這里的順序是根據levels這個命令中的內容生成的,可自行調整levels命令中的順序:
status <- factor(status, levels = c('excellent','improved' ,'poor'),ordered = TRUE) status[1] poor improved excellent poor excellentLevels: excellent < improved < poor
2. 向量中的數據定位
以age這個向量為例:
age <- c(25, 34, 59, 60, 20) age [1] 25 34 59 60 20
輸出向量中排在第3位的數據:
age[3] [1] 59
輸出排在1,2,5位的數據:
age[c(1,2,5)] [1] 25 34 20
輸出1至3位的數據:
age[c(1:3)] [1] 25 34 59
3. 向量中的數據計算
以age這個向量為例:
age <- c(25, 34, 59, 60, 20) # 仍以age為例age [1] 25 34 59 60 20 age+4 # 給向量中每個數都加4 [1] 29 38 63 64 24 sqrt(age) # 求平方根 [1] 5.000000 5.830952 7.681146 7.745967 4.472136 sort(age) # 給數據從低到高排序 [1] 20 25 34 59 60 sort(age, decreasing =T) # 給數據從高到低排序 [1] 60 59 34 25 20 age2 <- c(20,30,40,50,60) # 再生成一個向量 age+age2 # 將兩向量中的元素相加 [1] 45 64 99 110 80
4. 生成特定形式的向量
生成重復數據。用rep(x, ……),x表示要重復的內容。
rep(1,times=5) #times表示重復的次數 [1] 1 1 1 1 1 rep(c(1,2),4) #times這個表達可以省略 [1] 1 2 1 2 1 2 1 2 rep(c(1,2),each=4) #each也是針對重復次數的命令 [1] 1 1 1 1 2 2 2 2
特定間隔的數據。用seq(from,to,by)這個函數,from為起始值,to為終止值,by為數據之間的間隔。
seq(1,100,19) #from,to,by都可以省略 [1] 1 20 39 58 77 96 seq(1,10) #如果不指定by的內容,則默認為1 [1] 1 2 3 4 5 6 7 8 9 10
下一篇介紹數據框的相關操作。
數據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
解碼數據基因:從數字敏感度到邏輯思維 每當看到超市貨架上商品的排列變化,你是否會聯想到背后的銷售數據波動?三年前在零售行 ...
2025-05-23在本文中,我們將探討 AI 為何能夠加速數據分析、如何在每個步驟中實現數據分析自動化以及使用哪些工具。 數據分析中的AI是什么 ...
2025-05-20當數據遇見人生:我的第一個分析項目 記得三年前接手第一個數據分析項目時,我面對Excel里密密麻麻的銷售數據手足無措。那些跳動 ...
2025-05-20在數字化運營的時代,企業每天都在產生海量數據:用戶點擊行為、商品銷售記錄、廣告投放反饋…… 這些數據就像散落的拼圖,而相 ...
2025-05-19在當今數字化營銷時代,小紅書作為國內領先的社交電商平臺,其銷售數據蘊含著巨大的商業價值。通過對小紅書銷售數據的深入分析, ...
2025-05-16Excel作為最常用的數據分析工具,有沒有什么工具可以幫助我們快速地使用excel表格,只要輕松幾步甚至輸入幾項指令就能搞定呢? ...
2025-05-15數據,如同無形的燃料,驅動著現代社會的運轉。從全球互聯網用戶每天產生的2.5億TB數據,到制造業的傳感器、金融交易 ...
2025-05-15大數據是什么_數據分析師培訓 其實,現在的大數據指的并不僅僅是海量數據,更準確而言是對大數據分析的方法。傳統的數 ...
2025-05-14CDA持證人簡介: 萬木,CDA L1持證人,某電商中廠BI工程師 ,5年數據經驗1年BI內訓師,高級數據分析師,擁有豐富的行業經驗。 ...
2025-05-13CDA持證人簡介: 王明月 ,CDA 數據分析師二級持證人,2年數據產品工作經驗,管理學博士在讀。 學習入口:https://edu.cda.cn/g ...
2025-05-12CDA持證人簡介: 楊貞璽 ,CDA一級持證人,鄭州大學情報學碩士研究生,某上市公司數據分析師。 學習入口:https://edu.cda.cn/g ...
2025-05-09CDA持證人簡介 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度、美團、阿里等 ...
2025-05-07相信很多做數據分析的小伙伴,都接到過一些高階的數據分析需求,實現的過程需要用到一些數據獲取,數據清洗轉換,建模方法等,這 ...
2025-05-06以下的文章內容來源于劉靜老師的專欄,如果您想閱讀專欄《10大業務分析模型突破業務瓶頸》,點擊下方鏈接 https://edu.cda.cn/g ...
2025-04-30CDA持證人簡介: 邱立峰 CDA 數據分析師二級持證人,數字化轉型專家,數據治理專家,高級數據分析師,擁有豐富的行業經驗。 ...
2025-04-29CDA持證人簡介: 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度,美團,阿里等 ...
2025-04-28CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-27數據分析在當今信息時代發揮著重要作用。單因素方差分析(One-Way ANOVA)是一種關鍵的統計方法,用于比較三個或更多獨立樣本組 ...
2025-04-25CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-25在當今數字化時代,數據分析師的重要性與日俱增。但許多人在踏上這條職業道路時,往往充滿疑惑: 如何成為一名數據分析師?成為 ...
2025-04-24