国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)

這篇具有很好參考價(jià)值的文章主要介紹了R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

生成虛擬數(shù)據(jù)集

library(ggplot2)

data.matrix <- matrix(nrow = 100, ncol = 10)

colnames(data.matrix) <- c(
  paste("wt",1:5,sep = ""),
  paste("ko",1:5,sep = "")
)


rownames(data.matrix) <- paste("gene",1:100,sep = "")

head(data.matrix)

以上代碼生成了100行基因,10列樣本的矩陣
前五列命名wt開頭+1-5,表示正?;?br> 后五列命名ko開頭+1-5,表示缺少基因的樣本(knock-out)

給每行基因都統(tǒng)一命名gene+1-100

head()函數(shù)默認(rèn)查看前6行

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)
現(xiàn)在只是定義了矩陣的shape和name,還沒填充數(shù)值

for (i in 1:100){
  wt.values <- rpois(5, lambda = sample(x=10:1000, size = 1))
  ko.values <- rpois(5, lambda = sample(x=10:1000, size = 1))
  data.matrix[i,] <- c(wt.values, ko.values)
}

head(data.matrix)

這段代碼的作用是生成一個(gè)大小為100x10的數(shù)據(jù)矩陣data.matrix,其中前5列是"wt"(wild-type)樣本的值,后5列是"ko"(knockout)樣本的值。

在循環(huán)中,對(duì)于每個(gè)i的取值(從1到100),首先使用sample(x=10:1000, size = 1)從10到1000之間的整數(shù)中隨機(jī)抽取一個(gè)數(shù)作為泊松分布的參數(shù)lambda。然后,使用rpois(5, lambda)函數(shù)生成一個(gè)具有泊松分布的隨機(jī)數(shù)向量,其中每個(gè)元素表示一個(gè)基因在"wt"樣本中的表達(dá)量。同樣的過程也用于生成"ko"樣本中的表達(dá)量。

最后,通過c(wt.values, ko.values)將"wt"和"ko"樣本的表達(dá)量合并為一個(gè)長度為10的向量,并將其賦值給data.matrix的第i行。

for循環(huán)給依次給1-100行的前五列和后五列賦值,填充值介于10-1000之間。

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)
初始虛擬數(shù)據(jù)集創(chuàng)建完畢,接下來用prcomp()函數(shù)分析各樣本之間關(guān)系。該函數(shù)默認(rèn)情況下以基因?yàn)榱校瑯颖緸樾?,和我們?chuàng)建的矩陣互為轉(zhuǎn)置,因此需要用到轉(zhuǎn)置函數(shù)t()

pca <- prcomp(t(data.matrix), scale = TRUE)

plot(pca$x[,1], pca$x[,2])

pca.var <- pca$sdev^2
pca.var.per <- round(pca.var/sum(pca.var)*100, 1)

barplot(pca.var.per, main = "Screen Plot", xlab ="principal component", ylab = "percent variation")

prcomp(, scale = TRUE)表示對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化
每一列表示一個(gè)基因所對(duì)應(yīng)的10個(gè)樣本,即一列只有十個(gè)數(shù)據(jù)
plot 生成一個(gè)2D的圖,前兩個(gè)主成分的散點(diǎn)圖
R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)
pca.var 表示 標(biāo)準(zhǔn)差的平方

pca.var.per 表示 每個(gè)變量所占的百分比,保留小數(shù)點(diǎn)后一位
R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)
可以看到前兩個(gè)成分所占比例最大,尤其是第一個(gè)成分

用 barplot 來直觀每個(gè)成分所占比例

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)

ggplot2繪圖

pca.data <- data.frame(sample = rownames(pca$x),
                       X = pca$x[,1],
                       Y = pca$x[,2]
                       )

ggplot(data = pca.data, aes(x = X, y = Y,label = sample))+
  geom_text()+
  xlab(paste("pc1-", pca.var.per[1], "%", sep = ""))+
  ylab(paste("pc2-", pca.var.per[2], "%", sep = ""))+
  theme_bw()+
  ggtitle("my pac graph")

先按 ggplot2 需要的方式格式化數(shù)據(jù),x軸用第一個(gè)成分,y軸用第二個(gè)成分

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)
可以發(fā)現(xiàn)數(shù)據(jù)分布在了兩側(cè),我們用prcomp()調(diào)用負(fù)載得分loading scores 的參數(shù)rotation

通過分析pca$rotation,可以了解該主成分與哪些基因相關(guān)性較高,哪些基因?qū)χ鞒煞值呢暙I(xiàn)較大。這對(duì)于解釋主成分分析的結(jié)果和理解數(shù)據(jù)的結(jié)構(gòu)和變化模式非常有幫助。

loading_scores <- pca$rotation[,1]

gene_score <- abs(loading_scores)
gene_score_ranked <- sort(gene_score,decreasing = TRUE)
top_10_genes <- names(gene_score_ranked[1:10])


pca$rotation[top_10_genes, 1]

這里我們查看 PC1 的負(fù)載得分,因?yàn)?PC1 解釋原始數(shù)據(jù)的 93.6%的方差

loading_scores <- pca$rotation[,1] 這行代碼的作用是將PCA分析結(jié)果中第一個(gè)主成分(即第一列)的負(fù)載得分(即100個(gè)基因數(shù)據(jù))提取出來并賦值給loading_scores變量。

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)

abs()取絕對(duì)值,再從小大到小排序,選取排名靠前的前十個(gè)基因top_10_genes

R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)
若想顯示每個(gè)基因?qū)?yīng)的 rotation,用以下代碼即可,展示的是帶正負(fù)值的

pca$rotation[top_10_genes, 1]

排名前10的基因在第一主成分上的負(fù)載得分

總的來說,本文對(duì)基因表達(dá)數(shù)據(jù)進(jìn)行了主成分分析,并可視化結(jié)果。
通過PCA主成分分析,可以降維并找到影響數(shù)據(jù)變化最大的主要因素,進(jìn)而進(jìn)行數(shù)據(jù)的可視化和分析。
文章來源地址http://www.zghlxwxcb.cn/news/detail-507759.html

到了這里,關(guān)于R 語言 ggplot2 PCA 主成分分析(虛擬數(shù)據(jù)集)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • R語言ggplot2——散點(diǎn)圖

    示例輸入數(shù)據(jù):

    2024年02月13日
    瀏覽(19)
  • R語言ggplot2——柱形圖

    BMI.txt

    2024年02月16日
    瀏覽(18)
  • R語言可視化【ggplot2】

    R語言可視化【ggplot2】

    文章的文字/圖片/代碼部分/全部來源網(wǎng)絡(luò)或?qū)W術(shù)論文或課件,文章會(huì)持續(xù)修繕更新,僅供學(xué)習(xí)使用。 目錄 R語言可視化【ggplot2】 一、可視化介紹 二、不同情況適用的圖形 類別比較: ?數(shù)值關(guān)系: 數(shù)據(jù)分布: ?時(shí)間序列: ?局部與整體: 舉幾個(gè)例子: ?類別比較:柱形圖

    2023年04月19日
    瀏覽(23)
  • 【數(shù)據(jù)處理方法】主成分分析(PCA)原理分析

    【數(shù)據(jù)處理方法】主成分分析(PCA)原理分析

    ????????筆者最近在學(xué)習(xí)的過程需要使用一些數(shù)據(jù)分析和處理的方法,而PCA就是其中常用的一種手段。但在自學(xué)的過程中,由于筆者水平有限,對(duì)一些博客中的公式不是能很好理解(數(shù)學(xué)不好的辛酸???),導(dǎo)致總是對(duì)整個(gè)方法的原理沒有一個(gè)透徹的理解。后來在視頻用

    2023年04月09日
    瀏覽(24)
  • R語言tidyverse教程:ggplot2繪圖初步

    R語言tidyverse教程:ggplot2繪圖初步

    R語言系列: 編程基礎(chǔ)??循環(huán)語句??向量、矩陣和數(shù)組??列表、數(shù)據(jù)幀 排序函數(shù)??apply系列函數(shù) tidyverse :readr??tibble ggplot2有其獨(dú)特的繪圖語法,想要實(shí)現(xiàn)數(shù)據(jù)繪圖,除了數(shù)據(jù)和集合形狀之外,還需要一個(gè)叫做 aesthetic 的東西,這個(gè)不知道應(yīng)該怎么翻,后面就統(tǒng)一叫做美術(shù)

    2024年02月04日
    瀏覽(36)
  • R語言的ggplot2繪制分組折線圖?

    R語言的ggplot2繪制分組折線圖?

    R繪制分組折線圖.R 首先看數(shù)據(jù)情況:group有3組。Time有3組,數(shù)據(jù)意思是在3組3個(gè)時(shí)間點(diǎn)測量了某指標(biāo),現(xiàn)在要繪制組1、組2、組3某指標(biāo)y按時(shí)間的變化趨勢 數(shù)據(jù)情況: 看看最終的效果圖如下: 下面是本次使用的代碼 .libPaths () setwd ( \\\"C:/Users/12974/Desktop/百度經(jīng)驗(yàn)/03圖形繪制/03R繪

    2024年01月22日
    瀏覽(19)
  • R語言ggplot2 | R語言繪制物種組成面積圖(三)

    R語言ggplot2 | R語言繪制物種組成面積圖(三)

    ?? 利用R語言繪制物種組成圖。本文以堆疊面積圖的方式與大家分享。 面積圖又叫區(qū)域圖。它是在折線圖的基礎(chǔ)之上形成的, 它將折線圖中折線與自變量坐標(biāo)軸之間的區(qū)域使用顏色或者紋理填充,這樣一個(gè)填充區(qū)域我們叫面積。顏色的填充可以更好地突出趨勢信息(比如時(shí)

    2024年02月13日
    瀏覽(20)
  • R語言畫圖的-- ggplot2(實(shí)現(xiàn)圖例的精細(xì)修改)

    R語言畫圖的-- ggplot2(實(shí)現(xiàn)圖例的精細(xì)修改)

    ggplot2 是R中用來作圖的很強(qiáng)的包,但是其用法比較多且各種參數(shù)比較復(fù)雜,我自己使用的時(shí)候還經(jīng)常需要查閱一些關(guān)鍵參數(shù)等,因此想要寫一個(gè) r 中 ggplot2 的作圖文檔,方便自己查閱。 但是今天突然發(fā)現(xiàn)了一個(gè)網(wǎng)站,這個(gè)網(wǎng)站里面包含了 ggplot2 作圖的幾乎所有內(nèi)容。有各種圖

    2024年02月13日
    瀏覽(27)
  • 數(shù)據(jù)降維之主成分分析法PCA

    數(shù)據(jù)降維之主成分分析法PCA

    參考鏈接:https://www.bilibili.com/video/BV1E5411E71z 主成分分析(Principal Component Analysis,PCA), 是一種統(tǒng)計(jì)方法。通過正交變換將一組可能存在相關(guān)性的變量轉(zhuǎn)換為一組線性不相關(guān)的變量,轉(zhuǎn)換后的這組變量叫主成分。 在用統(tǒng)計(jì)分析方法研究多變量的課題時(shí),變量個(gè)數(shù)太多就會(huì)增

    2023年04月11日
    瀏覽(19)
  • 數(shù)據(jù)分析案例-基于PCA主成分分析法對(duì)葡萄酒數(shù)據(jù)進(jìn)行分析

    數(shù)據(jù)分析案例-基于PCA主成分分析法對(duì)葡萄酒數(shù)據(jù)進(jìn)行分析

    ???♂? 個(gè)人主頁:@艾派森的個(gè)人主頁 ???作者簡介:Python學(xué)習(xí)者 ?? 希望大家多多支持,我們一起進(jìn)步!?? 如果文章對(duì)你有幫助的話, 歡迎評(píng)論 ??點(diǎn)贊???? 收藏 ??加關(guān)注+ 目錄 1.項(xiàng)目背景 2.項(xiàng)目簡介 2.1分析目標(biāo) 2.2數(shù)據(jù)集介紹 2.3技術(shù)工具 3.算法理論 4.實(shí)驗(yàn)過程

    2024年02月03日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包