免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Scanpy單細(xì)胞差異表達(dá)、注釋與可視化實(shí)戰(zhàn)指南

Scanpy單細(xì)胞差異表達(dá)、注釋與可視化實(shí)戰(zhàn)指南 單細(xì)胞分析跑到后半程最容易出現(xiàn)兩種極端一種是聚類圖很漂亮但一問(wèn)你“這堆細(xì)胞到底是什么”答不上來(lái)另一種是差異表達(dá)跑完基因列表拉出來(lái)幾百行挑來(lái)挑去挑不出幾個(gè)能站得住腳的 marker。scanpy 的那套示例流程走到第三塊拼的其實(shí)不是代碼量而是對(duì)矩陣狀態(tài)、統(tǒng)計(jì)口徑和注釋邏輯的把控。這一篇接著往下講差異表達(dá)、細(xì)胞類型注釋和可視化這套組合拳順帶把軌跡推斷和細(xì)胞周期這些進(jìn)階動(dòng)作串起來(lái)。適合已經(jīng)跑通過(guò)質(zhì)控、歸一化、PCA、鄰居圖和 Leiden 聚類手里有一個(gè)帶leiden列的AnnData但面對(duì)rank_genes_groups的輸出不知道怎么下手的同學(xué)。全文的代碼都基于常見的公開外周血單核細(xì)胞示例數(shù)據(jù)集參數(shù)和坑點(diǎn)按我自己的實(shí)際操作習(xí)慣給。1. 走到這一步先別急著跑差異表達(dá)差異表達(dá)這步最冤的地方在于代碼只有一行跑完也能出結(jié)果但結(jié)果對(duì)不對(duì)沒人告訴你。我見過(guò)太多人聚類剛出圖順手就sc.tl.rank_genes_groups出來(lái)的 top 基因全是線粒體基因和核糖體基因然后開始懷疑人生。問(wèn)題通常不在統(tǒng)計(jì)方法而在喂進(jìn)去的矩陣根本不是你以為的那個(gè)矩陣。1.1 三種矩陣狀態(tài)決定你的結(jié)果可不可信單細(xì)胞流程里adata.X會(huì)經(jīng)歷至少三次變身原始 counts、歸一化加 log1p 之后的對(duì)數(shù)表達(dá)、以及sc.pp.scale之后的 z-score。這三種狀態(tài)在內(nèi)存里長(zhǎng)得一模一樣都是稀疏或稠密矩陣肉眼看不出來(lái)。差異表達(dá)要的是第二種也就是 log 歸一化后的數(shù)據(jù)但很多人做完 scale 直接往下跑X里已經(jīng)是 z-score 了。z-score 有正有負(fù)負(fù)值在做倍數(shù)變化的時(shí)候會(huì)被壓成很小甚至出錯(cuò)最后算出來(lái)的logfoldchanges完全沒有生物學(xué)含義。更麻煩的是這種錯(cuò)誤不會(huì)報(bào)錯(cuò)你只會(huì)看到一堆奇怪的正負(fù)號(hào)。所以我自己的習(xí)慣是在sc.pp.scale之前先把 log 歸一化后的數(shù)據(jù)存進(jìn)adata.raw后續(xù)所有差異表達(dá)和 marker 可視化都走use_rawTrue。# 歸一化與 log 轉(zhuǎn)換 sc.pp.normalize_total(adata, target_sum1e4) sc.pp.log1p(adata) # 關(guān)鍵一步把 log 數(shù)據(jù)鎖進(jìn) raw再去做 scale adata.raw adata sc.pp.scale(adata, max_value10)這么做的代價(jià)是內(nèi)存翻倍但換來(lái)的是后面所有分析都能隨時(shí)回到干凈的 log 矩陣。做完 scale 再 PCA、鄰居圖、UMAP、Leiden全部用 scale 后的X這部分沒問(wèn)題。但只要是算表達(dá)量差異、畫小提琴圖、畫點(diǎn)圖就統(tǒng)一use_rawTrue口徑就一致了。注意如果你的流程里壓根沒做 scale那adata.raw可能不存在這時(shí)候跑use_rawTrue會(huì)直接報(bào)錯(cuò)。判斷方法很簡(jiǎn)單print(adata.raw)看一眼是不是None。還有一個(gè)隱蔽的坑normalize_total之后再log1p和先log1p再歸一化結(jié)果不一樣。scanpy 官方流程是前者你照著做就行但如果你中間插了一步sc.pp.filter_genes把低表達(dá)基因過(guò)濾掉要注意過(guò)濾發(fā)生在歸一化之前還是之后。歸一化之后再過(guò)濾基因會(huì)導(dǎo)致每個(gè)細(xì)胞的總 counts 基數(shù)變化嚴(yán)格來(lái)說(shuō)需要重新歸一化。實(shí)際影響不大但如果你對(duì)結(jié)果特別較真就按“過(guò)濾基因 → 過(guò)濾細(xì)胞 → 歸一化 → log1p”的順序來(lái)。1.2 簇編號(hào)是隨機(jī)的別把0號(hào)簇寫死在代碼里L(fēng)eiden 聚類的輸出是一列0, 1, 2, ...的整數(shù)標(biāo)簽但這些數(shù)字沒有任何順序含義純粹是算法內(nèi)部給社區(qū)編的號(hào)。同一個(gè)數(shù)據(jù)集換個(gè)隨機(jī)種子、換個(gè) scanpy 版本甚至只是調(diào)了一下resolution簇的編號(hào)就會(huì)重排。我踩過(guò)一次很典型的坑腳本里寫死了“0號(hào)簇是 T 細(xì)胞、1號(hào)簇是單核細(xì)胞”結(jié)果換了臺(tái)機(jī)器重跑簇編號(hào)全亂注釋表直接對(duì)不上。正確的做法是把簇編號(hào)當(dāng)成一個(gè)臨時(shí)索引真正的身份靠 marker 基因判定。為了減少這種混亂我一般會(huì)在聚類之后、差異表達(dá)之前先跑一遍sc.tl.rank_genes_groups看看每個(gè)簇的 top 基因用一個(gè)字典把簇號(hào)和細(xì)胞類型對(duì)應(yīng)起來(lái)再統(tǒng)一寫回adata.obs[cell_type]。這樣即使中間重跑導(dǎo)致編號(hào)變化你只需要改字典不用改后面所有代碼。resolution的選擇也值得說(shuō)兩句。默認(rèn) 1.0 在幾千個(gè)細(xì)胞的 PBMC 數(shù)據(jù)上通常給出 8 到 12 個(gè)簇粒度差不多。如果你的目標(biāo)是找稀有亞群可以往上調(diào)到 1.5 甚至 2.0如果只是做粗分群0.5 就夠。我不建議一開始就上高分辨率因?yàn)榇匾欢嗖町惐磉_(dá)的比較次數(shù)會(huì)暴漲多重檢驗(yàn)校正之后的pvals_adj會(huì)變得很難看很多真實(shí)的差異會(huì)被壓下去。1.3 多批次數(shù)據(jù)的差異表達(dá)要怎么處理單樣本數(shù)據(jù)沒什么好糾結(jié)的直接按簇分組比較就行。但如果你是多個(gè)樣本合并分析的情況就復(fù)雜了。假設(shè)你做的是合并后的聚類leiden是所有細(xì)胞混在一起分的那么某個(gè)簇里可能同時(shí)包含來(lái)自多個(gè)樣本的細(xì)胞。這時(shí)候直接跑差異表達(dá)得到的基因里會(huì)混進(jìn)大量批次效應(yīng)帶來(lái)的差異而不是真正的細(xì)胞類型差異。我的處理順序是先做批次校正具體用什么方法看數(shù)據(jù)量樣本量少用 Harmony 這類基于嵌入的校正樣本量大可以考慮基于圖的整合在校正后的嵌入空間上做鄰居圖和 Leiden然后用校正前的 log 表達(dá)矩陣做差異表達(dá)。這個(gè)組合聽起來(lái)矛盾其實(shí)很合理聚類需要在去除批次效應(yīng)的空間里做否則同一類型的細(xì)胞會(huì)被批次拆開但差異表達(dá)要的是真實(shí)的表達(dá)量對(duì)比用校正后的矩陣反而會(huì)把生物學(xué)信號(hào)也一起抹掉。如果樣本量足夠更穩(wěn)妥的做法是在差異表達(dá)里顯式加入?yún)f(xié)變量或者干脆按樣本分開跑差異表達(dá)再取交集。rank_genes_groups本身沒有內(nèi)置的協(xié)變量參數(shù)需要在調(diào)用前把數(shù)據(jù)按樣本拆分。這個(gè)操作成本高一些但對(duì)于結(jié)論的可信度提升很明顯。2. 差異表達(dá)的參數(shù)選擇與結(jié)果解讀矩陣狀態(tài)確認(rèn)干凈、簇編號(hào)心里有數(shù)之后就可以正式跑了。這一行代碼sc.tl.rank_genes_groups(adata, leiden, methodwilcoxon)誰(shuí)都寫得出來(lái)但method選什么、結(jié)果怎么篩、閾值卡多少這三個(gè)問(wèn)題決定了你后面注釋的成敗。2.1 四種method到底選哪個(gè)scanpy 提供了幾個(gè)統(tǒng)計(jì)檢驗(yàn)方法差別不小我把常用的幾個(gè)列成表method原理適用場(chǎng)景注意事項(xiàng)wilcoxon秩和檢驗(yàn)非參數(shù)默認(rèn)首選對(duì)表達(dá)分布不正態(tài)的數(shù)據(jù)穩(wěn)健細(xì)胞數(shù)少時(shí) p 值偏保守t-test參數(shù)檢驗(yàn)假設(shè)正態(tài)數(shù)據(jù)量大、分布接近正態(tài)對(duì)離群值敏感稀疏基因容易失真t-test_overestim_vart 檢驗(yàn)但方差不合并簇間細(xì)胞數(shù)差異懸殊時(shí)更敏感容易放出假陽(yáng)性需要更嚴(yán)的校正logreg邏輯回歸想看基因的判別能力而非單純表達(dá)差異結(jié)果解釋方式和前三個(gè)不同logfoldchanges含義要小心我自己的默認(rèn)選擇是wilcoxon。單細(xì)胞數(shù)據(jù)零膨脹嚴(yán)重表達(dá)分布根本不是正態(tài)的t 檢驗(yàn)的前提不成立用非參方法更穩(wěn)妥。t-test_overestim_var在簇大小極不均衡時(shí)確實(shí)更容易撈出差異基因比如一個(gè) 2000 細(xì)胞的大簇和一個(gè) 30 細(xì)胞的小簇比較但這個(gè)“更容易”里包含了不少假陽(yáng)性我一般只在探索性分析時(shí)用正式結(jié)論還是回到 wilcoxon。還有一個(gè)容易被忽略的參數(shù)是pts。默認(rèn)不輸出表達(dá)比例加上ptsTrue之后結(jié)果里會(huì)多一列pts表示該基因在這個(gè)簇里表達(dá)值大于 0的細(xì)胞比例以及pts_rest表示在其他簇里的比例。這兩個(gè)數(shù)字特別有用能幫你過(guò)濾掉那種“統(tǒng)計(jì)顯著但只有三五個(gè)細(xì)胞表達(dá)”的基因。sc.tl.rank_genes_groups( adata, groupbyleiden, methodwilcoxon, use_rawTrue, ptsTrue )2.2 結(jié)果提取與閾值到底卡多少跑完之后結(jié)果存在adata.uns[rank_genes_groups]里是個(gè)結(jié)構(gòu)化的嵌套字典直接看很費(fèi)勁。用sc.get.rank_genes_groups_df轉(zhuǎn)成 DataFrame 才是正常人的操作。df sc.get.rank_genes_groups_df(adata, group0)得到的表里有這么幾列names、scores、logfoldchanges、pvals、pvals_adj、pct_nz_group、pct_nz_reference開了ptsTrue才有后兩列。這里有個(gè)必須說(shuō)清楚的細(xì)節(jié)logfoldchanges的底數(shù)是 2也就是說(shuō)logfoldchanges1代表兩倍差異2代表四倍。很多人誤以為是自然對(duì)數(shù)把閾值卡在 0.25 就以為是 1.28 倍實(shí)際上那是 1.19 倍尺度差了一截。另外 scanpy 在計(jì)算倍數(shù)變化時(shí)如果檢測(cè)到你的數(shù)據(jù)是 log1p 過(guò)的內(nèi)部會(huì)把值還原到線性尺度再算比值所以你不用自己手動(dòng)expm1但也正因?yàn)槿绱藆se_raw一定要指向正確的 log 矩陣否則還原出來(lái)的東西就離譜了。閾值怎么卡我給一個(gè)實(shí)操建議pvals_adj 0.05這是底線多重檢驗(yàn)校正后的顯著性logfoldchanges 0.5約等于 1.4 倍差異能過(guò)濾掉大量微小但顯著的變化pct_nz_group 0.25這個(gè)簇里至少 25% 的細(xì)胞表達(dá)該基因避免被極少數(shù)細(xì)胞帶偏三個(gè)條件同時(shí)卡通常每個(gè)簇能留下二三十個(gè)比較靠譜的候選基因。如果你只是想做初步注釋其實(shí)放寬到pvals_adj 0.05加logfoldchanges 0.25也就夠看了反正最后還要靠 marker 知識(shí)庫(kù)交叉驗(yàn)證。提示scores這一列是檢驗(yàn)統(tǒng)計(jì)量的標(biāo)準(zhǔn)化值可以粗略理解為“差異的強(qiáng)度”但不同 method 之間不可比。用它排序沒問(wèn)題別拿它當(dāng)效應(yīng)量。2.3 一次拿到一整套marker基因表格逐個(gè)簇提 DataFrame 太累我一般寫個(gè)循環(huán)把所有簇的 top 基因匯總成一張表順便把過(guò)濾條件也帶上方便后面查。import pandas as pd results {} for group in adata.obs[leiden].cat.categories: df sc.get.rank_genes_groups_df(adata, groupgroup) df df[(df[pvals_adj] 0.05) (df[logfoldchanges] 0.5)] df[cluster] group results[group] df.head(30) marker_table pd.concat(results.values(), ignore_indexTrue)這張表后面的用法很多可以直接拿 top 基因去搜可以畫熱圖看整體格局也可以作為注釋時(shí)的參考清單。我習(xí)慣再補(bǔ)一步把所有簇的 top 基因取并集去重之后作為后續(xù)點(diǎn)圖的var_names這樣一張圖就能看到全局的 marker 分布比逐簇看 violin 效率高得多。這里再補(bǔ)充一個(gè)經(jīng)驗(yàn)不要只看 top 10。有些細(xì)胞類型的特征基因在差異表達(dá)里排名并不靠前因?yàn)樗谶@個(gè)簇里表達(dá)量不高但特異性很強(qiáng)被那些高表達(dá)但有噪聲的基因擠下去了。我一般會(huì)把每個(gè)簇的前 50 個(gè)基因都導(dǎo)出來(lái)掃一眼找那些“知道是 marker 但沒進(jìn)前十”的基因往往能糾正一些誤判。3. 細(xì)胞類型注釋從看marker到寫標(biāo)簽差異表達(dá)給你的是“哪些基因不一樣”注釋解決的是“這些不一樣的基因說(shuō)明它是什么細(xì)胞”。這兩步之間沒有自動(dòng)化的橋梁必須靠 marker 知識(shí)加人工判斷。這是整個(gè)流程里最像“手藝活”的部分也是最容易糊弄過(guò)去的部分。3.1 一份能直接抄的PBMC marker清單外周血單核細(xì)胞是最經(jīng)典的示例數(shù)據(jù)細(xì)胞類型相對(duì)標(biāo)準(zhǔn)marker 也比較明確。我整理了一份常用的對(duì)照表遇到新數(shù)據(jù)可以先拿這套去套套不上的再單獨(dú)找細(xì)胞類型核心marker輔助marker備注CD4 T 細(xì)胞CD3D, CD3E, IL7RLTB, MALAT1與 CD8 共享 CD3 系列CD8 T 細(xì)胞CD3D, CD8A, CD8BGZMK, CCL5需與 NK 區(qū)分NK 細(xì)胞NKG7, GNLY, KLRD1NCAM1, PRF1不表達(dá) CD3B 細(xì)胞CD79A, MS4A1, CD19CD37, BANK1MS4A1 即 CD20經(jīng)典單核細(xì)胞LYZ, S100A8, S100A9CD14, VCAN占比通常最高非經(jīng)典單核細(xì)胞FCGR3A, MS4A7CDKN1C, LST1FCGR3A 即 CD16樹突狀細(xì)胞FCER1A, CST3CLEC10A, CD1C數(shù)量少容易被并入單核漿細(xì)胞樣樹突IL3RA, CLEC4CGZMB, TCF4IL3RA 即 CD123血小板PPBP, GP9, PF4ITGA2B常被視為雜質(zhì)紅系前體HBB, HBA1, HBA2—高表達(dá)時(shí)注意是否污染用這張表的時(shí)候有個(gè)細(xì)節(jié)要注意marker 是組合看的不是單基因定生死。比如 LYZ 高表達(dá)可能是單核細(xì)胞也可能是中性粒細(xì)胞或者某些 DC 亞群CD3D 陽(yáng)性但 CD8A 陰性大概率是 CD4 T。我一般會(huì)先看每個(gè)簇的 top 基因里有沒有兩個(gè)以上的該類型 marker再?zèng)Q定標(biāo)簽。另外血小板的 PPBP 和紅系的 HBB 如果出現(xiàn)在某個(gè)“看起來(lái)像 T 細(xì)胞”的簇里很可能是雙細(xì)胞或者環(huán)境 RNA 污染。處理方式取決于比例如果只是零星幾個(gè)細(xì)胞直接忽略如果整個(gè)簇都這樣那這個(gè)簇可能就是個(gè)偽簇考慮在聚類前就把這些基因高的細(xì)胞濾掉。3.2 打分法與閾值判定光看 top 基因列表有時(shí)候不夠直觀尤其是當(dāng)一個(gè)簇的 marker 信號(hào)比較弱、top 基因里混著一堆核糖體基因的時(shí)候。這時(shí)候sc.tl.score_genes就派上用場(chǎng)了它能給每個(gè)細(xì)胞算一個(gè)基因集的綜合得分然后你按簇看這個(gè)得分的分布。sc.tl.score_genes( adata, gene_list[CD3D, CD3E, CD2, IL7R], score_nameT_cell_score, ctrl_size50, n_bins25, use_rawTrue )幾個(gè)參數(shù)的含義值得說(shuō)清楚。ctrl_size是從表達(dá)量分箱里隨機(jī)抽多少個(gè)對(duì)照基因默認(rèn) 50調(diào)大一點(diǎn)結(jié)果更穩(wěn)但計(jì)算慢n_bins是按平均表達(dá)量把基因分成多少個(gè)箱子默認(rèn) 25主要目的是讓對(duì)照基因的表達(dá)水平和你目標(biāo)基因集匹配避免因?yàn)槟繕?biāo)基因本身表達(dá)高就天然得分高。use_rawTrue這里同樣重要用 scale 后的數(shù)據(jù)算出來(lái)的得分沒法解釋。得分算完怎么看我一般用sc.pl.violin按簇畫出來(lái)看哪個(gè)簇的得分分布整體上移。判定標(biāo)準(zhǔn)不是“得分大于 0 就是陽(yáng)性”而是看分布的形狀如果某個(gè)簇的得分分布明顯雙峰說(shuō)明這個(gè)簇內(nèi)部可能混了兩類細(xì)胞值得提高分辨率再分一次如果整個(gè)簇的分布都很平那說(shuō)明這套 marker 對(duì)這個(gè)簇沒有區(qū)分度。打分法還有一個(gè)經(jīng)典用途是細(xì)胞周期評(píng)分這個(gè)放到后面第 5 節(jié)講。3.3 自動(dòng)注釋與人工復(fù)核的配合現(xiàn)在基于參考數(shù)據(jù)集的自動(dòng)注釋工具不少思路基本一致拿一個(gè)已經(jīng)注釋好的參考數(shù)據(jù)集把你的數(shù)據(jù)映射過(guò)去用相似度或者分類器給出候選標(biāo)簽。這類方法的好處是快壞處是它一定會(huì)給你一個(gè)答案哪怕你的數(shù)據(jù)里存在參考集里沒有的細(xì)胞類型。我的用法是自動(dòng)注釋出初稿人工復(fù)核定終稿。具體操作上先用自動(dòng)方法給每個(gè)簇一個(gè)候選標(biāo)簽然后拿這個(gè)標(biāo)簽去反查差異表達(dá)結(jié)果如果自動(dòng)注釋說(shuō)是 B 細(xì)胞那這個(gè)簇的 top 基因里應(yīng)該出現(xiàn) CD79A、MS4A1 這些對(duì)得上就通過(guò)對(duì)不上就手動(dòng)改。這個(gè)交叉驗(yàn)證的步驟花不了多少時(shí)間但能擋掉大部分明顯的錯(cuò)誤。還有一種情況是自動(dòng)注釋給出的標(biāo)簽特別細(xì)比如把 T 細(xì)胞分成了七八個(gè)亞群但你的數(shù)據(jù)里每個(gè)亞群只有幾十個(gè)細(xì)胞。這種細(xì)粒度標(biāo)簽在統(tǒng)計(jì)上站不住腳我一般會(huì)往上合并一層統(tǒng)一叫 T 細(xì)胞然后在討論里注明“未進(jìn)一步細(xì)分亞群”。別為了顯得分析深入就硬保留細(xì)分標(biāo)簽細(xì)胞數(shù)不夠的亞群差異表達(dá)結(jié)果基本是噪聲。3.4 把注釋寫回obs并保持可追溯注釋結(jié)果最終要落到adata.obs里通常是新增一列cell_type。這里我強(qiáng)烈建議同時(shí)保留原始的leiden列不要覆蓋。后續(xù)做任何分組可視化、差異表達(dá)你都需要能在“聚類編號(hào)”和“細(xì)胞類型”之間來(lái)回切換。比如你想看某個(gè)細(xì)胞類型內(nèi)部是否還有異質(zhì)性就得回到 leiden 層面看。cluster2celltype { 0: CD4 T, 1: CD14 Monocyte, 2: B cell, 3: CD8 T, 4: NK cell, 5: FCGR3A Monocyte, 6: Dendritic cell, 7: Platelet } adata.obs[cell_type] adata.obs[leiden].map(cluster2celltype).astype(category)用map而不用循環(huán)賦值好處是映射關(guān)系一目了然而且沒映射到的簇會(huì)自動(dòng)變成缺失值你能立刻發(fā)現(xiàn)漏了哪個(gè)。映射完記得看一眼adata.obs[cell_type].value_counts()確認(rèn)沒有大量 NaN。另外把這份字典單獨(dú)存成一個(gè)文件比如 json 或者 csv跟分析腳本放一起下次別人接手或者你自己三個(gè)月后回看能立刻搞清楚當(dāng)時(shí)的判斷依據(jù)。4. 可視化細(xì)節(jié)從能看到能放進(jìn)匯報(bào)圖和圖之間的差距在單細(xì)胞分析里體現(xiàn)得特別明顯。同一份數(shù)據(jù)有人畫出來(lái)的點(diǎn)圖一眼就能看出細(xì)胞類型分布有人畫出來(lái)糊成一團(tuán)什么都看不清。這一節(jié)專講參數(shù)。4.1 dotplot的關(guān)鍵參數(shù)點(diǎn)圖是 marker 展示的主力橫軸基因、縱軸簇點(diǎn)的大小表示表達(dá)比例顏色表示平均表達(dá)量。核心參數(shù)就那么幾個(gè)但每個(gè)都能顯著改變可讀性。sc.pl.dotplot( adata, var_namesmarker_dict, groupbycell_type, standard_scalevar, cmapRdBu_r, dot_max0.8, dot_min0.1, figsize(12, 5), use_rawTrue )standard_scalevar是按基因做標(biāo)準(zhǔn)化把每個(gè)基因的表達(dá)量縮放到 0 到 1 之間。這個(gè)參數(shù)非常關(guān)鍵不同基因的絕對(duì)表達(dá)量差異巨大CD3D 可能均值 3PPBP 可能均值 8不標(biāo)準(zhǔn)化的話顏色分布完全被高表達(dá)基因主導(dǎo)低表達(dá)但特異的基因就看不出來(lái)了。按基因標(biāo)準(zhǔn)化之后每個(gè)基因的顏色都是相對(duì)自己的尺度特異性一目了然。dot_max和dot_min控制點(diǎn)大小的映射范圍。默認(rèn)dot_max是 1.0也就是表達(dá)比例最高的那個(gè)點(diǎn)會(huì)撐滿如果你的數(shù)據(jù)里有個(gè)基因在所有簇里都接近 100% 表達(dá)那其他點(diǎn)就全被壓得很小。把dot_max設(shè)成 0.8 或者 0.6能讓中等表達(dá)的點(diǎn)的差異更明顯。cmapRdBu_r是紅藍(lán)配色配合standard_scalevar的時(shí)候紅色代表高表達(dá)、藍(lán)色代表低表達(dá)中間是白色。我不建議用默認(rèn)的 viridis因?yàn)樗诒硎尽坝姓胸?fù)的相對(duì)高低”時(shí)不如發(fā)散型配色直觀。當(dāng)然如果你要投的期刊有配色要求另說(shuō)。還有一個(gè)實(shí)用技巧基因分組。var_names可以直接傳一個(gè)字典鍵是細(xì)胞類型值是對(duì)應(yīng)的基因列表這樣點(diǎn)圖會(huì)自動(dòng)按組排列基因并加上分組標(biāo)簽比自己手動(dòng)排順序省事得多。marker_dict { T cell: [CD3D, CD3E, IL7R, CD8A], NK: [NKG7, GNLY, KLRD1], B cell: [CD79A, MS4A1, CD19], Monocyte: [LYZ, S100A8, CD14, FCGR3A], DC: [FCER1A, CST3], Platelet: [PPBP, GP9] }4.2 stacked violin / matrixplot / heatmap 的取舍這三種圖都能展示多基因多組的表達(dá)格局但側(cè)重不同選錯(cuò)了會(huì)事倍功半。sc.pl.stacked_violin展示的是每個(gè)基因在每個(gè)組里的完整表達(dá)分布能看出雙峰、零膨脹這些結(jié)構(gòu)信息。缺點(diǎn)是基因一多圖會(huì)變得極長(zhǎng)。我一般只在需要展示兩三個(gè)關(guān)鍵基因的分布細(xì)節(jié)時(shí)用它比如確認(rèn)某個(gè) marker 是不是真的在目標(biāo)簇里特異性高表達(dá)還是所有簇都有一小撮陽(yáng)性細(xì)胞。sc.pl.matrixplot是點(diǎn)圖的簡(jiǎn)化版只保留顏色不保留點(diǎn)的大小適合臨床或者跨學(xué)科讀者信息密度低但易懂。如果匯報(bào)對(duì)象不熟悉單細(xì)胞用這個(gè)比點(diǎn)圖友好。sc.pl.rank_genes_groups_heatmap是直接基于差異表達(dá)結(jié)果畫熱圖每個(gè)簇取 top N 個(gè)基因。這張圖的信息量最大能同時(shí)看到多個(gè)簇的 marker 格局但基因太多時(shí)行標(biāo)簽會(huì)糊成一片。我一般取每個(gè)簇前 5 到 8 個(gè)基因n_genes5配合swap_axes調(diào)整方向出來(lái)的圖比較清爽。sc.pl.rank_genes_groups_heatmap( adata, n_genes5, groupbycell_type, show_gene_labelsTrue, use_rawTrue, cmapRdBu_r )提示熱圖默認(rèn)會(huì)對(duì)表達(dá)量做標(biāo)準(zhǔn)化如果圖上的顏色和你預(yù)期的表達(dá)高低對(duì)不上先檢查standard_scale參數(shù)和use_raw設(shè)置。這兩個(gè)是熱圖翻車的高頻原因。4.3 出圖保存與配色sc.pl系列函數(shù)都支持save參數(shù)傳個(gè)文件名就會(huì)自動(dòng)存到figures/目錄下格式默認(rèn)是 png可以通過(guò)sc.settings.figdir改路徑、sc.settings.file_format_figs改格式。我一般設(shè)成 pdf矢量圖放進(jìn)匯報(bào)里放大不失真。配色上連續(xù)變量用發(fā)散型或者順序型配色分類變量比如 UMAP 上的細(xì)胞類型多用定性配色。scanpy 默認(rèn)的分類配色在類別超過(guò) 10 種之后會(huì)開始重復(fù)或者相近容易混淆。我習(xí)慣手動(dòng)指定把主要的細(xì)胞類型分配差異大的顏色稀有的類型用灰色系這樣 UMAP 上主次分明。sc.settings.figdir ./figures sc.settings.file_format_figs pdf sc.pl.umap( adata, colorcell_type, palette[#4E79A7, #F28E2B, #E15759, #76B7B2, #59A14F, #EDC948, #B07AA1, #9C755F], frameonFalse, legend_locon data, legend_fontsize10, save_celltype.pdf )frameonFalse去掉邊框legend_locon data把標(biāo)簽直接標(biāo)在簇中心比側(cè)邊圖例清晰。但如果你的簇有重疊on data會(huì)擠在一起那就退回默認(rèn)的right margin。5. 往前一步細(xì)胞周期、軌跡與通路差異表達(dá)和注釋做完一個(gè)完整的描述性分析就閉環(huán)了。但如果想再往前走一步看看細(xì)胞狀態(tài)和分化關(guān)系還有幾件事值得做。5.1 細(xì)胞周期回歸增殖活躍的細(xì)胞在轉(zhuǎn)錄組上會(huì)和同類型的靜息細(xì)胞拉開很大距離聚類的時(shí)候經(jīng)常出現(xiàn)一個(gè)“細(xì)胞周期簇”把本該在一起的細(xì)胞拆開。處理方式是給每個(gè)細(xì)胞算 S 期和 G2M 期得分然后在降維之前把這兩個(gè)得分的影響回歸掉。# 使用公開的 S 期與 G2M 期基因列表 sc.tl.score_genes_cell_cycle(adata, s_geness_genes, g2m_genesg2m_genes) sc.pp.regress_out(adata, [S_score, G2M_score]) sc.pp.scale(adata, max_value10)注意順序score_genes_cell_cycle必須在scale之前調(diào)用而且要在 log 歸一化之后。regress_out這一步在細(xì)胞數(shù)上萬(wàn)的時(shí)候會(huì)很慢因?yàn)樗侵鸹蜃鼍€性回歸。如果數(shù)據(jù)量大可以考慮用sc.pp.scale之前先做sc.pp.highly_variable_genes只對(duì)高變基因做回歸能省不少時(shí)間。還有一個(gè)反直覺的點(diǎn)細(xì)胞周期回歸不是必須的。如果你的研究對(duì)象本身就是增殖過(guò)程比如發(fā)育或者腫瘤那細(xì)胞周期差異就是生物學(xué)信號(hào)不該回歸掉。只有在研究細(xì)胞類型構(gòu)成、且確認(rèn)細(xì)胞周期主導(dǎo)了聚類結(jié)果的時(shí)候才需要這一步。5.2 PAGA與DPT想看細(xì)胞類型之間的連接關(guān)系PAGA 是個(gè)好選擇。它把每個(gè)簇壓縮成一個(gè)節(jié)點(diǎn)用簇間的連接強(qiáng)度作為邊的權(quán)重能直觀看出哪些細(xì)胞類型在轉(zhuǎn)錄組上更接近。sc.tl.paga(adata, groupscell_type) sc.pl.paga(adata, plotFalse) sc.tl.umap(adata, init_pospaga) sc.pl.paga_compare(adata, threshold0.03)sc.pl.paga_compare會(huì)同時(shí)畫出 PAGA 圖和 UMAP兩張圖并排看能驗(yàn)證 UMAP 上的鄰近關(guān)系是否和 PAGA 的連接強(qiáng)度一致。如果不一致往往說(shuō)明 UMAP 的局部結(jié)構(gòu)有失真這時(shí)候 PAGA 的結(jié)果更可信。DPT 是沿著 PAGA 的圖結(jié)構(gòu)算偽時(shí)間的需要一個(gè)明確的起點(diǎn)細(xì)胞。這個(gè)起點(diǎn)怎么選取決于你的生物學(xué)問(wèn)題通常選一個(gè)處于分化起始狀態(tài)的細(xì)胞類型里的代表性細(xì)胞。adata.uns[iroot] 0 # 替換成你選定的起始細(xì)胞的索引 sc.tl.dpt(adata)DPT 的結(jié)果對(duì)起點(diǎn)極其敏感換個(gè)起點(diǎn)偽時(shí)間軸就完全反過(guò)來(lái)。所以我一般會(huì)試幾個(gè)候選起點(diǎn)看哪個(gè)得到的偽時(shí)間排序符合已知的生物學(xué)常識(shí)再定下來(lái)。5.3 基因集打分看通路除了細(xì)胞周期score_genes可以用來(lái)評(píng)估任意基因集的活性比如炎癥相關(guān)、氧化磷酸化、細(xì)胞毒性等等。做法和前面一樣關(guān)鍵是基因集來(lái)源要可靠別自己隨手拼。打分結(jié)果可以按細(xì)胞類型畫成熱圖看哪類細(xì)胞在哪個(gè)通路上更活躍。這一步的價(jià)值在于它能把差異表達(dá)得到的“一堆基因”提升到“功能層面”讓結(jié)論更容易解釋。比如你發(fā)現(xiàn)某個(gè)單核細(xì)胞亞群在炎癥基因集上得分顯著更高這比列出一百個(gè)上調(diào)基因有說(shuō)服力得多。需要注意的是通路打分和差異表達(dá)是兩套邏輯前者是基因集整體水平后者是單基因水平結(jié)論有可能不一致。不一致的時(shí)候優(yōu)先相信差異表達(dá)的單基因結(jié)果因?yàn)樗苯油返梅质芑蚣|(zhì)量和大小影響很大適合作為輔助證據(jù)。6. 踩坑實(shí)錄與速查表寫了一堆方法最后還是落到實(shí)際會(huì)遇到什么問(wèn)題。下面這張表是我自己和我?guī)н^(guò)的同學(xué)最常撞的幾類按出現(xiàn)頻率排序。6.1 典型問(wèn)題排查表現(xiàn)象可能原因排查方法處理方式所有簇的 top 基因都是 MT- 或 RPS 開頭質(zhì)控沒做好或差異表達(dá)用了未過(guò)濾數(shù)據(jù)檢查adata.var_names里線粒體基因比例回到質(zhì)控步驟重新過(guò)濾logfoldchanges 出現(xiàn)大量負(fù)值或異常大X是 scale 后的 z-scoreprint(adata.X.max())看是否超過(guò) 10改用use_rawTrue某個(gè)簇沒有任何顯著差異基因簇太小或該簇是雙細(xì)胞/偽簇看該簇細(xì)胞數(shù)和 marker 分布合并到鄰近簇或?yàn)V除點(diǎn)圖上所有點(diǎn)顏色接近沒做standard_scale檢查參數(shù)加standard_scalevarUMAP 上同類細(xì)胞被拆成幾塊批次效應(yīng)未校正按樣本著色看分布做批次校正后重聚類use_rawTrue報(bào)錯(cuò)adata.raw為 Noneprint(adata.raw)在 scale 前補(bǔ)上adata.raw adataleiden 報(bào)錯(cuò)找不到模塊缺少 igraph / leidenalgpip list檢查安裝對(duì)應(yīng)依賴或改用flavorigraph6.2 幾個(gè)容易忽略的實(shí)操細(xì)節(jié)第一個(gè)是隨機(jī)種子。Leiden 聚類、UMAP、t-SNE 都有隨機(jī)性不設(shè)種子的話每次重跑圖都不一樣。在腳本開頭加一句sc.settings.seed 0能保證結(jié)果可復(fù)現(xiàn)。我做過(guò)的項(xiàng)目里有一半以上的“圖怎么變了”問(wèn)題都是沒設(shè)種子導(dǎo)致的。第二個(gè)是數(shù)據(jù)類型的坑。adata.obs里的分組列必須是 categorical 或者至少是字符串如果是整數(shù)類型rank_genes_groups在某些版本里會(huì)把它們當(dāng)連續(xù)變量處理結(jié)果完全不對(duì)。用astype(category)顯式轉(zhuǎn)換一下能省掉很多莫名其妙的報(bào)錯(cuò)。第三個(gè)是基因名的大小寫和別名。同一個(gè)基因在不同注釋版本里可能叫CD3D也可能叫CD3dmarker 列表直接拷過(guò)來(lái)匹配不上是常事。判斷方法是用adata.var_names.isin(gene_list).sum()看能匹配上幾個(gè)如果明顯少于預(yù)期就得檢查命名規(guī)范必要時(shí)做大寫轉(zhuǎn)換或者別名映射。第四個(gè)是保存中間結(jié)果。單細(xì)胞流程跑一遍動(dòng)輒十幾分鐘做完注釋之后的AnnData一定要adata.write(annotated.h5ad)存下來(lái)。我見過(guò)太多人注釋完直接關(guān)了 notebook第二天想畫個(gè)圖發(fā)現(xiàn)得從頭跑。存的時(shí)候注意write默認(rèn)會(huì)保留raw文件會(huì)比較大可以用adata.write(x.h5ad, compressiongzip)壓縮一下。最后一個(gè)也是我覺得最重要的注釋結(jié)論要留證據(jù)。不要只留一個(gè)cell_type列把當(dāng)時(shí)的點(diǎn)圖、差異表達(dá)表格、映射字典都存到一個(gè)文件夾里。半年后你或者別人回頭看能立刻知道每個(gè)標(biāo)簽是怎么來(lái)的。這件事在單獨(dú)分析的時(shí)候感覺多余但在需要復(fù)現(xiàn)或者答辯的時(shí)候能救命。我個(gè)人在實(shí)際操作中的體會(huì)是單細(xì)胞分析真正花時(shí)間的從來(lái)不是寫代碼而是反復(fù)在“這個(gè)簇到底是什么”上糾結(jié)。差異表達(dá)給你的是線索不是答案marker 知識(shí)庫(kù)給你的是參照也不是答案。真正的答案往往來(lái)自多個(gè)證據(jù)的交叉top 基因?qū)Φ蒙稀⒋蚍址植贾С?、自?dòng)注釋也這么認(rèn)為、文獻(xiàn)里這個(gè)組織確實(shí)有這類細(xì)胞。四條里對(duì)上三條就可以定下來(lái)了剩下的那一條對(duì)不上記下來(lái)別硬圓。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲爆乳无码精品AAA片蜜桃| 国产超碰在线| 丁香五月婷婷黑人妻黄色电影院| 国产精品激情AV久久久青桔| 91久久婷婷| 五月丁香拍拍激情综合| 99啪啪视频| 激情涩播| 免费观看欧美成人AA片爱我多深| www.精品99| 色婷婷a三区麻| 色五月婷婷91| 91综合视频在线| 婷婷色导航| 无人精品在线视频| 色婷婷激情五月天| 先锋资源 996| AV在线大香蕉| 色色COm| 亚洲精品视频在线播放| 色婷婷88| 五月天另类图片区99| 麻豆AV一区二区三区| 色色99| 激情的五月| 久久新| 国产性爱在线| 9精品久久999| 国产,欧美,学生妹,视频| 久操无码| 超碰9| 欧美成人精品老美女噜噜噜| 人妻精品久久久久久| 另类色视频| 激情五月色综合网| ww久久| #NAME?| 人妻丰满精品一区二区A片| 五月天久久综合婷婷| 五月婷婷之六月丁香| 五月婷婷av| 超碰高清在线| 猫咪伊人久久| 亚洲成人网在线观看| 青青艹b| 香蕉久久五月| 色五月天丁香婷婷色| 在线中文AV| 大香蕉手机视频| 激情亚洲网| www.jiujiujiu| 九九热只有精品| 久色国产| 婷婷五月情| 人人干人人看| 激情综合区| 91青娱乐青青草| 色五月丁香婷婷在线观看| 深爱开心激情网| 99开心五月五月丁香激情| 丁香久久五月婷综合| 婷婷久久性爱| 九九热精品| 人人操99| 这里只有精品99www| 婷婷色五月噜噜| 激情综合亚洲| 亚洲噜色| 97碰人人操| 99福利导航| 久九色| 欧美黄色AA片哗啦啦啦| 亚洲久久天堂| 久久在这里99| 丁香五月色情| www.日韩国产| 国产古装妇女野外A片| 色五月情| 97干在线播放| 超碰AAAAAAV| 天天成人综合视频| 色综合色五月| 婷婷最新地址| 婷婷六月色开| 色色免费网战视频| 99视频精品在线| 大香蕉伊人久久| 91re色综合视频| 五月丁香六月婷婷的女人| 狠狠爱夜夜| 丁香六月啪啪| 人人爽亚洲| 国产婷婷五月在线视频| 五月天色图| 97色五月婷婷在线| 超碰99在线观看| 久婷婷久草| 吉澤明步Av一區二區| 婷婷五月激情图片| 99欧美三级视频| 99re热在线视频| 婷婷五月天亚洲天堂| 热99热9| 天堂中文国产| www.99热精品99.com| 91ncm视频| 久久这里面只有精品视频| 99热在线观看免费| 国产FREESEXVIDEOS性中国| 婷婷伊人综合| 色月视频| 丁香六月婷婷色XXXXX| 国产片XXXXA片国语对白| 五月婷中文娱乐综合| www99精品| 天天日天天日天天搞| 色色色婷婷五月天| 人橾人| 五月丁香色五月| 欧美啪啪9| 日本一级黄色片。| 桃色激情婷婷伊人网| 天天狠狠干| 五月丁香啪啪综合| 97资源碰碰| 激情 婷婷 丁香五月天| 成人做爰高潮A片免费视频| www91在线| 热的无码综合视频| 狠狠爱深色婷婷综合| 五月丁香六月香香蕉| 天天操夜夜爽| 久久人人添人人爽添人人片αV | 影音先锋天天日| 五月婷婷色播视频| 激情五月激情综合网| 丁香视频| 色五月婷婷大香蕉| 久久久久亚洲AV成人无码电影| 欧洲亚洲欧洲99久久| 久99视频| 六月丁香深深爱综合网| 亚洲99热| 婷婷,五月天,丁香,第一| 国产精品视频免费看| 色吧网综合| 免費亭亭成人| 久久精品A片777777| 综合久久婷婷| 99热精品在线观看| 久久婷婷欧美| 啪啪五月综合| 99热免费精品| 五月丁香六月色婷婷综合五月天| 思思热视频| 大香蕉九操| 99ri精品在线| 丁香五月婷婷啪啪啪| 97色97干| 影音先锋色色色资源色资源色| 久久总和99| 91丨九色|PRNY熟妇| 欧美丁香婷婷五月| 97干综合网| 婷婷五月丁香五月| 婷婷五月天成人在线视频| 91九色在线| 99热偷拍| 一本大道熟女人妻中文字幕在线| 婷婷丁香五月亚洲综合网在线视频观看| 国产99美少妇| 五月天丁香婷婷久久九| 丁香久月| xxxx五月激情| www九月婷婷| 五月开心深爱激情网| 美国十月色婷婷在线观看| 久久色这里只有精品| 色网站99| 99精品丰满| 亚州操人在线视频| 综合色婷婷| 超碰在线综合| 五月丁香综合精品| 丁香五月婷婷Av| 亚洲无码成人| w婷婷五月婷婷w| 久久99免费视频网站| 九九热在线精品| 久久99大全| 在线成人网站| 亚洲色vA| 《诡秘之主》在线观看| 婷婷新网址| 另类激情综合| 欧美久久五月婷婷| 九九色综合网| 色视频色综合91| 26uuu成人网| 六月婷婷综合| 百度4399有码精品V在线观看| 激情综合网五月丁香| 玖玖资源站国产| 怡红院AV亚洲一区二区三区H| 婷婷五月天高清无码| 丁香激情久久| 青青艹b| 大香蕉五月天| 精品久久久人妻| 久热九九| 色综合视频| 97福利视频| 五月婷婷基地| 中文aV网| 色五月无码| 另类图片五月激情| 操人妻AV| 婷婷操逼| 婷婷91| 欧美亚洲婷婷五月| 激情播丁香| 99在线一区| 五月丁香六月激情综合| 在线中文字幕视频| 99爱精品| 丁香五月六月激情久久| 天天拍夜夜爽| 五月丁香亭亭成人电影| 亚洲色久| 99久久网站| 中文在线视频久9| 国产精品18久久久| 九九色热| 久久九九网| 91久久九久久九久久九久久九久久| 五月天婷婷激情干干| 婷婷激情在线| 欧美99视频| 伊人激情综合| 九月停停| 色99欧洲色19| 熟女国产在线一区二区三区四区| 影音先锋秋秋五月婷婷| 99热午夜精品| 亚洲成人电影在线免费观看| 99操不停| 中文字幕成人日韩| www.激情com| 爱iii做iiii日| 五月丁香婷婷色| 伊人久久大香网| 爽天天天天天天天| 国产在线黄色| 午夜丁香| 天天操夜夜操| 青青久在线视频免费观看| 五月丁香激情综合网| 五月婷婷丁香大陆免费| 99操逼| 五月婷婷六月天| 狠狠爱婷婷丁香| 国产成人亚洲综合A∨婷婷| 亚洲久热无码| 五月丁香777| 丁香五月在线| 丁香五月首页| 91碰碰碰| 玖玖爱伊人网| 欧美123区免| 亚州第一A片| 97成人在线视频| 97碰91| 99热www| 色 五月 天 婷婷 丁香 九月| 在线免费观看激情视频| 91碰| 五月色欧洲| 玖玖精品视频99| 国产精品久久久丁香五月八戒视频| 另类小说婷婷色| 久久久久思思热| 婷婷五月天伊人网| 五月婷婷六月丁香在线| 91蝌蚪窝视频在线| 超级碰碰碰97免费| 亚洲综合网激情五月天| 天天插天天射| 国产亚洲色婷婷久久99精品91| 精品无码久久久久久久久| 亚洲精品V天堂中文字幕| 婷婷五月丁香青青草在线| 五月婷性爱| 久婷自拍视频| 亚洲亚洲激情| 99.N在线视频| 97caop| 1024在线观看免费视频| 激情欧美婷婷| 婷婷五月天久久久| 超碰在线国产| 在线99色| 99色色最新视频| 综合在线色婷婷| 九九色图| 婷婷五月天丁香综合网| 免费九九热| 激情色情五月天| 久久总和99| 超碰v| 玖玖婷婷婷丁香五月| 综合丁香婷婷五月天| 激情五月天免费视频| 丁香五月社区| 超碰国产一区| 五月丁香天天| 九色视频91| 激情涩播| www.狠狠狠.com| 26uuu精品国产| 热九九精品| αV电影| aaa丁香五月天| 在线可以看的av网址| 久久五月丁香婷婷| 成人网站av免费网站推荐| 欧美天天五月丁香免费观看| 婷婷伊人综合中文字幕| 久久久9久| 婷婷 久综合| 九九热这里| 思思热在线观看| 九九大香蕉黄色影院| www.婷婷,com| 国产小精品| 91人人爽狠狠狠| 五月天婷婷中文字幕在线播放| 深爱激情五月天| 狼友超碰| 天天操加勒比| 久久精品99久久久久久| 可以免费观看的AV| 涩 五月 婷婷 狠狠| 亚洲成人电影aaaa| WWW.久久.COM| 六月丁香婷婷尤物| 婷婷综合性爱网| 一夜福利不卡| 天天色粽合合合合合合合| 任你日视频| 99无码视频| 1024人妻无码中文字幕| 色性五月天| 性做久久久久久久免费看| 色噜噜婷婷| 99人妻碰碰碰久久久久视| 久久99免费视频网站| 思思综合热| 狠狠爱综合网| 狠狠肏综合网| 免费无码毛片一区二区A片 | 天天爽在线视频| 99re8这里只有精品99re8热视频| 中文在线视频久9| 人人人人人人人草| 免费在线a| 丁香六月激情国产| 五月丁香色婷婷久久| 99热这里只有精品在线| 99久.| 婷婷色五月激情强奸四射| 人人综合91网| 五月色网| 久久久久久草黄色片AV在线观看| 丰满少妇猛烈A片免费看观看| 99re久热只有精品6在线直播| 香蕉久久国产AV一区二区| 婷婷综合激情五月中文字幕| 人妻无码视频网| 狠狠插狠狠| 欧美三级视频| 婷婷五月丁香91| 色玖玖综合网| 97超碰婷婷五月天| 久久婷婷六月综合综合| 激情五月综合色| 国产69久久久欧美黑人A片| www.五月天婷婷姐姐| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 成人美女网| 日韩AV色色色| 第五婷婷伊人丁香色| 丁香五月久久| 思思综合热| 1024在线观看免费视频| 99热老网站| 久久成人性爱| 色婷婷色| 伊人综合网站| 日日日日日| 超碰在线成人| 天堂网操| 色情五月综合婷婷| 五月综合色| 久久久人妻人伦| www。久久久久一b。Cc| www999日韩精品| WWW、日本色丁香co m| 激情性爱五月天网页| 99热精品在线观看| 96性爱视频| 丁香激情五月少妇| 亚洲亚洲人成综合网络| 欧美啪啪9| 狠狠另类视频| 久久与婷婷| 亚洲乱码日产精品BD| www.婷婷.com| 就爱操www com| 久久人五月| 五月婷婷综合网| 丁香五月婷婷在线观看| 女人天堂av| 人人插9| 超碰9799| 99自拍视频在线观看| 久久思思精品| 丁香五月天av| wwW天天干| 99热 在线播放| 国产成人精品亚洲线观看| 色五月播五月| 丁香五月婷综合网| 99人人操人人摸| 91操人| 99人人精品| 人妻第九页| 久久伊人大香蕉| 综合网亚洲| 色情激情五月| 色丁香综合影院| www.久久久久久久| 激情AV中文| AA片在线观看视频在线播放| 狠狠草在线观看| 婷婷婷久久久| 色色色五月婷| 天天干天天插| 激情网五月天| 五月丁香色婷婷| 精品无码99| 色五月激情五月丁香五月婷婷啪啪综合| 97人人干| 在线不卡视频| 久久精彩免费视频| 五月丁香婷婷综合网| 激情久久久久久久久久| 亚洲丁香五月天视频| 五月丁香六月花| 色婷婷五月基地在线| 国产精品久久久久久白浆色欲| 9久久久| 亚洲av成人一区二区电影在线| av操逼网| 亚州欧美黄色电影| 欧美月久久| 亚洲AV日韩AV永久无码网站| 四射综合网| 97丁香视频| 99色免费在线观看| 综合玖玖偷拍| 激情六月丁香| 激情四射五月天偷偷看婷婷| 九九综合精品| 丁香激激情网| 夜夜躁爽日日| 五月婷婷丁香综合| 激情五月婷婷| 极品精品一区二区三区在线| 991自拍视频| 九九久久玖玖爱| 国洲夜色亚热在线久久| 91婷婷丁香五月| 婷婷中文无码| 国产日批视频| 色婷婷丁香五月综合| 性生活久久朋友人妻| 五月丁香黄色视频| 120分钟婬片免费看| 丁香五月天婷婷激情| 粉嫩AV久久一区二区三区| 四川女人毛多水多A片| 99色在线观看视频者| 99re视频在线精品| 五月丁香啪啪综合| 欧洲激情五月天婷婷| 色了色综合| 激情五月天伊人影院| 新激情五月天天在线网| 成人av免费观看| 五月婷A V在线| 六月婷婷网| 丁香激情网| 激情五月婷婷网在线观看| 人人干AV| 五月婷婷综合久久| 午夜天天精品视频| 婷婷五月电影| A A色色| www.五月丁香| 天天日天天舔| 操久久精| 五月色导航| 日日噜噜夜夜狠狠久久丁香五月| 婷婷五月天成人| 亚洲无码 图片区| 五月婷婷七月丁香| 丁香久久五月天视频在线观看| 久色婷婷200| 天天操天天操天天操天天操天天操 | 91九色视频| sewuyuejiqingwang| 婷婷爱五月天| 中文字幕 中文字幕明步| 碰碰碰91| 五月五丁香婷婷| 91人操| 精品国产AV色一区二区深夜久久 | 久久婷丁香五月| 天天碰夜夜操| 性爱综合网| 欧美色色网| 久久97| 4399伦理午夜| 五月婷婷自拍视频| 日产精品久久久久久久蜜臀 | 丁香 婷婷 激情 综合 五月| 日本天堂免费99| 免费无码毛片一区二区A片| 激情文学第四色婷婷丁香五月| se99在线| 五月婷婷天| 婷婷久久影院| 五月天激情小说欧美激情| 综合五月天| 九九99九九99九九99视频网| 爱草人视频| 色五月激情五月| 开心五月六月婷婷| 色婷五月| 五月婷婷影院| 99色热视频| 99热精品超碰| 丁香五月激情在线| 免费日本aⅴ中文字幕 | 色色色婷| 香焦网五月天| 另类图片五月天| WWW.亚洲无码| site:publishdd.com| 人妻AV在线| 婷婷99狠狠| 婷婷激情六月综合| 色五月色图| 无码色色色| 96色婷婷| 婷婷五月激情小说| 久久婷婷东京热| 99精品视频网站| 五月刺激丁香月综合| 欧美综合婷婷网| 免费看欧美成人A片无码| 丁香九月综合| 国外亚洲成AV人片在线观看| 停停色综合伊人| 色婷婷av在线观看| 精品综合久久久久久五月天| 热思思九九| er99免费视频在线| 国产AV成人精品| 337午夜福利| 色色色色色九九九九九| 99热精这里只有精品| www.婷婷五月| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 2015WWW永久免费观看播放| 五月丁香在线综合| 色五月中文字幕| 91色吧网| 婷婷丁香六月综合激情站| 亚洲精品婷婷| 五月丁香人人婷婷在线观看| 欧在线一区| 99re热在线视频观看| 99日精品视频| 网站免费一站二站| 婷婷六月中文字幕| 人妻中文av| 婷婷六月综合基地| 99re热视频这里只有综合亚洲| 色色色999| 狠狠狠狠狠狠狠狠草| 超碰熟女农村在线69| 99久久玖玖| www.cao.com久久| 超碰高清在线| 婷婷成人网五月天| 99热在线播放| 丁香婷婷视频在线| www.zbzhongsen.com| 荫道BBWBBB高潮潮喷| 人妻操在线看| 激情四射网| 综合色图区| 婷婷五月天色网久| 九九热啪啪| 午夜婷婷| 婷婷丁香五月综合免费视频百花| 婷婷精品在线| 97在线观视频免费观看| 激情五月婷黄版| 色色操| 任你干aa| 99视频自拍| 五月色丁香成人| 色色影院黄大片| 啪啪啪综合网| 欧美美美女性色视频| 成人av在线电影| 午夜大香蕉| 青青草成人网| 五月天另类小说亚洲| 久久久久久久,99精品视频| 亚洲婷婷久久综合| www,五月丁,com| www.97碰碰com| 无码少妇高潮喷水A片免费| 久久美女五月天| 婷婷五月在线综合| 琪琪色五月婷婷老师| 久久久网站| 岛国av电影网站| 天天操天天日天天爱| 久久五月天丁香| 国产AV一区二区三区日韩| 五月婷婷开心网| 丁香五月aV| 色播五月婷婷| 久久超视频| 玖玖婷婷五月天毛片| 成人短视频在线观看| 五月婷婷激情五月| 国产成人va在线| 狠狠色丁香| 天天干天天曰天天射| 98国产精品综合一区二区三区| 亚洲精品亚洲人成人网| 五月婷婷啪啪| 99热精品综合| 婷婷五月免费观看| 成人噜噜网| 五月丁香激| 99精品久久久久久久久| 久久久婷婷五月天| 国产美女无遮挡裸体毛片A片| 99综合久久| 色色日本| 思思 热 99| 这里只有免费的精品| 97色在线观看视频| 九九九九无码| 亚洲av另类在线观看| 大香蕉人妻| 97五月久久丁香婷婷| 婷婷色av| 婷婷放心五日爱| 91色噜噜狠狠狠狠色综合| 中文字幕丰满乱孑伦无码专区| 色婷婷影院| 婷婷五月情| 狠狠干在线| 成人片在线播放| 91操碰| 久操人妻| 色五月婷婷在线| 色五月激情网| 99热精品在线| 在线99热| 国产精品99久久久久久久女警| 九月丁香| 亚洲精品又粗又大又爽A片| 色五月情| 久久久久久五月天| 日韩视频女神99| 99热只有精品在线| 久久9RE热视频精品98| 激情综合婷婷久久| 97色啪| 色婷婷综合网站| 综合亚洲六月婷婷在线| 色情五月天se| 久久婷婷五月综合啪| 热99这里只有精品视频| 五月成人综合| 天天干天天操天天拍| 丁香六月情| 五月婷婷综合视频| 黄色AV日韩| 99热这里只有精品免费| 亚洲狠狠终合停停终合| 五月做爱| 99噜噜| 日本超碰在线| 五月丁香拍拍激情综合| 人人视频色| 五月亭亭网成人在线视频| 丁香久久综合| 色婷婷久久| 成人无码髙潮喷水A片| AA片在线观看视频在线播放| 九九99偷拍视频| 91艹人| 日日噜狠狠色综| 天天干天天干天天干天天干天天干天天| 97婷婷在线视频| 五月丁香 啪啪| 另类亚洲2| av中文在线| 五月丁香WWW| 色综合激情| 婷婷五月天色色| 国产特黄色精品一区二区三区精品无广告| 久久婷婷五月天大香蕉| 人人看人人97| 婷婷丁香人妻天久久| 欧洲高清免费久久| 成人五月天丁香| 亚洲成av人影院| 久人人操| 天天日人人| 五月婷婷六月色| 99热这里| 激情五月色综合网| 99热只有这里才是精品| 99热这里只有精品16| 婷婷丁香综合在线| 另类五月婷婷| 色婷婷成人| 日韩操人| 大香线蕉伊人| 精品怡红九九九| 九九99免费视频| 亚州欧美黄色电影| 丁香五月天色综合| 极品另类| 九月停停| 激情综合色五月六月婷婷| 99热99极品观看| 九月激情婷婷丁香| 亚洲视99| 9热精品| 五月婷婷www| 伊人日日干| 4399成人黄A片| 另类视在线| 橾逼网| 丁香婷婷AV| 色欲丁香久久| 开心五月婷婷| 丁香婷婷婷婷十二月在线观看视频| sS丁香五月婷婷| 五月天丁香成人| 婷婷五月欧美AA片免费| 日日干干天天干| 五月天婷婷社区| 97人妻碰碰碰久久久久-最近国语高清| 日本久久精品18| 欧美丁香五月天| 国产精品久久久久久久久久免费| 天天爽在线视频| 午夜丁香| 五月色婷| 丁香五月香蕉| 五月丁香六月婷综合成人综合| 日本欧美国产| 综合伊人久久| 婷婷综合视频| 五月婷在线影院| 99热在线精品播放| 亚洲成人在线综合| 91色五月| 日韩欧洲亚洲| 可以免费观看的AV| 99久久免费性爱视频`| 日日夜夜狠狠| 亚洲激情校园| 99热精品在线在线| 欧美激情五月天婷婷| AAA久久| 五月丁香五月丁香| 国产精品美女久久久久AV超清| 99re熱| 色五月网址| Av性爱网站| 日日日日日| 南京搡BBBB搡BBBB| 69凹凸成人综合网| 婷婷激情五月色综合| 婷婷丁香五月在线观看91| 婷婷五月深爱五月| 99啪在线| 综合啪啪| www久久五月com| 亚洲日韩乱码一区二区三区四区| 森林影视大全,最好看的2019年视频| 亚洲精品一区无码A片| 五月丁香婷婷成人伊人网| 中文字幕日本最新乱码视频| 婷婷综合网站| 狠爱婷色| 激情综合久久| 一本久久亚洲五月婷婷| www.第四色99| 狠狠草在线观看| 五月天婷婷激情在线色图| 久草视频一,二三四| 婷婷五月色| 996热| 婷婷五月天成人动漫 | 丁香五月电影| 亚洲激情综合五月婷婷啪啪| 综合久久综合综合| 国产在线中文字幕| 国产六月婷婷| 色五月婷婷自拍| 日本三级韩三级99久久| 久久人妻伊人| 在线另类视频| 大战熟女丰满人妻AV| 久热视频这里只有精品| 九九色欲网| www.色婷婷| 五月天成人小说网| 91九色首页| 97很鲁在线视频| 婷婷五月综合啪| 五月天色狠狠| 欧美婷婷丁香五月| 九九热视频在线观看| 激情五月婷婷中文字幕| 91超碰在线播放| 狠狠精品干练久久久无码中文字幕 | 国产人人操| 久久久性爱视频| 五月婷婷六月婷| 99热99干| 葵花AV在线| 激情综合网色播五月| 深爱激情网五月天| 激情网站五月| 九九激情| 天天做天天爱天天高潮| 少妇激情五月天| 日韩色色色99| 大香蕉人人网| 大香蕉视频婷婷| 精品人妻久久久久久| 色综合久久中文| 综合色综合| 五月婷婷内射网| 婷婷九月在线| 日日操夜夜操中国无码| 丰满老熟妇BBBBB搡BBB| 丁香五月色情| 99热精品中文字幕| 婷婷五月色網站| 涩涩五月天综合| 五月丁香激情综合啪啪| 欧美激情-区二区三区| 大香蕉啪啪啪| 天天爱天天爽| 99碰超| 原琪琪色影院| 日本色五月| 99热无码首页| 狠色狠色狠狠色综合网| 亚洲AV人人操| 婷婷综合九月| 九九99视频精品| 国产XXXX搡XXXXX搡麻豆| 亚洲成人免费电影| 97操碰碰无码视频| 天天天干夜夜夜操| 色五月丁香伊人| 婷婷五月天深爱| 99久热| 99热99精品| 大香蕉伊人99| 超碰色色综合| 五月丁香六月色| 丁香五月成人丝袜| 婷婷丁香五月天操逼| 色涩视频久久| 亚洲网站观看视频| 极品人妻VIDEOSSS人妻| 免费看欧美成人A片无码| 99精品免费视频| 色优久久| 噼里啪啦完整版中文在线观看| 中文字幕按摩做爰| 少妇做爰免费视看片| 激情内射人妻1区2区3区| 成人精品一区日本无码网| 九九色逼| 超碰在线91| 亚洲中文字幕在线观看| 五月在线| 9色在线| 青青草大香| 丁香六月天婷婷色| 六月丁香激情| 色女人久久| 欧美婷婷六月丁香综合色| 日本色频| 久久性爱视频免费| 99色最新在线视频网站| 激情五月婷婷六月丁香| 夜夜资源站| 综合色播| 欧美69久成人做爰视频| 五月婷婷 婷婷五月 一区二区 久久久| 夜夜撸夜夜骑| 国产成人+综合亚洲+天堂| 91丨九色丨东北熟女| 成人做爰高潮A片免费视频 | 婷婷五月天奸女| 人人干天天舔| 91dy.av| 激情五月久久| 婷香五月| 大香蕉 婷婷| 五月丁了香蕉综合| 婷婷五月AV| 成人做爰A片免费看网站找不到了| 日本本土色网第一区| 这里精品| 丁香六月啪| 久久五月婷综合| 丁香六月| 激情五月丁香综合蜜桃| A色色| 天天爱天天秀天天做| 婷婷色在线| 9色91视频| www:99热视频| 九洲一级A片| 亚洲视频丁香网va| 亚洲日韩欧美综合VA| 激情综合网五月丁香| 99操99| 久久无意婷婷| 99久在线视频| 五月婷婷免费视频| 婷婷草| 婷婷丁香十月| 丁香六月婷婷色XXXX| 97色色综合| 色五月丁香激情视频| 五月丁香色六月激情干大屄| 五月天伊人| 婷婷色情五月| 欧美激情丁香五月天久久婷婷一区| 五月婷婷色激情| 欧美婷婷五月丁香| 六月丁香天堂| 千人斩操逼| 色婷婷综合网| 天天久久婷婷| 亚洲丁香五月综合| 97碰| 天天操天天国产三级片处女学生妹| 婷婷激情五月天网站| 六月丁香综合| 少妇被躁爽到高潮无码文 | 六月丁香AV| 思思久久精品视频| 五月丁香婷婷AV| 91精选国| 九玖欧洲亚洲| 天天做天天爽| 久久9久| 六月丁香六月婷婷欧美| 牛牛澡牛牛爽| 婷婷黄色五月天在线视频| 婷婷五月AV| 婷婷色吧| 狠狠搞亚洲| 国产毛片操B| renrencaoni| 婷婷九月激情| 99精品久久久久| 天天爽日日爽夜夜爽| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 女人天堂AV| 影音先锋男人av资源站| 五月天成人在线| 日本三级日本三级99| 97婷婷色| 色哟哟www| 人妻中文字幕精品| 国产性色蜜乳| 香蕉久久国产AV一区二区| 精品99这里有| 日韩操人| 六月婷欧美| 久久这里只有精品8| 久操乱| 999影院成人在线影院| 国产又色又爽又黄又免费| 人人干人人干骚美女| www.婷婷| 99这里有精品视频| 超碰在线99| 91玖玖| 丁香五月天黄色片| 国产综合婷婷| 天堂久久精品| 丁香九月久久| 99ri精品| 综合网色| 九九热精品| 色9色| 精品一区二区三区免费毛片爱| 日韩色色网| 丁香五月天视频| 亚洲色精彩| 99精品偷自拍| 亚洲瑟瑟精品在线| 婷婷色影音天| 久久久精品人妻录| 欧美成人AAA片一区国产精品| 色婷婷五月天亚洲| 26uuu亚洲| 丁香五月 综合| 婷婷五月天97干| 天天免费日日夜夜夜夜| 丁香五月色激情| 日韩在线99| 久久伊人大香蕉| 婷婷色中文字幕| 人人色AV| AV在线二十六页| 激情综合网五月丁香| 99精品自拍视频| 久久久婷婷婷| 丁香五月五月婷婷五月天激情四射| 日本偷拍九九九| 色色99| 快乐激情五月色婷婷| www.久久| 直接看的AV| 性生活视频98791| 99热九九热| 五月综合亚洲| 亚洲久久日| 色婷婷婷婷| 丁香久久五月天视频在线观看| 人人操人人看97干| 激情小说五月天| 色婷婷丁香五月天在线视频| 91久女| 超碰99久久| 色宗合久久五月婷婷| 性爱网六月丁香| 色婷婷久久| 99热这里只有精品最新| 五月天婷婷青青草| 激情综合网五月婷婷| 日日噜噜久久婷婷五月天| 九97免费视频| 久久久久久欧美精品se一二三四| 色五月婷婷久久大| 婷婷久久免费| 五月婷三级片| 亚洲 视频 导航 一区| 精品国产va久久久久| 伊人热婷婷| 天天日天天插| 婷丁香五月天| WWW.99热| 久操婷婷| 丁香伊人五月色婷婷五十路| 色情综合网| 免费观看的av| 色婷婷五月亚洲| 久久久27操| 美国少妇性做爰| 天天综合在线网| 在线VA视频| 91超碰在线观看| 日韩有码久久| 蜜桃五月天| 婷婷六月丁香五月| 综合色色婷婷| 97色伦另类图片小说视频 | 婷婷丁香综合网| 色五月综合在线| 日日噜噜夜夜狠狠久久丁香五月| 激情丰满熟妇五月| caop在线视频| 综合五月丁香97| 777精品久无码人妻蜜桃| www.91在线观看| 婷婷在线激情| 久久五月婷天天干| 婷婷色五月婷婷姐妹| 色啪影院| 超碰97色| 久99999热视频在线观看免费| 狠狠干综合| 丁香五月综合激情啪啪| 十月丁香九月婷婷综合| 99精品久久久久久久婷婷久久| 欧美A级网站| 干一干xxxx| 婷婷五月丁香色播| 天天爱天天天射AV| 99视频内射三四| 五月丁香性爱| 99热这里| 欧美日韩AAAA| 亚洲综合丁香五月| 色丁香综合影院| 99这里只有精品视频免费| 亚洲情色一区| 9热视频在线观看| 婷婷久久18| 激情碰碰碰| 亚洲第二AV| 亚洲AV成人精品网站在线播放| 色婷婷基地 | 精品欧美一区二区三区久久久| 九九久久99| 丁香五月伊人| 乱精品一区字幕二区| 激情五月综合网| www.婷婷五月天.com| 色五月婷婷网| 日本色婷婷| 亚洲 五月 婷婷 成人| 天天综合网亚洲综合网| av操一操| 综合色激情| www.色五月.com| 狠狠色成人影片| 色色国产| 色婷另类| 久久538| 欧美婷婷| 在线观看免费人成视频无码| 久久久婷婷五月天| 色五月在线综合| 99久久終合| 手机在线视频观看9| 久久精品女人天堂AAA| 亚洲精品另类| 亚洲成人av在线播放| 久久综合中文字幕| 丁香五月综合婷婷| 热中文字幕| 亚洲综合新99视频| 99综合免费视频| 成人色五婷婷| 婷婷丁香五月亚洲17cao| 亚洲中文av| 日本99久久| 激情綜合W W W,激情五月天| 老美AA片| 丁香久久九九99| 2017狠狠干| 亚洲小视频免费播放| 99久久成人| 亚洲天码视频www蛋播视频| 伊人五月天在线| 婷色五月天| 大香蕉九九| 激情婷婷丁香| 午夜在线成人网站免费观看| 狠狠色丁香久久综合婷婷亚洲成人福利 | 成人短视频在线| 欧美一区二区三区不卡影视| 久久五月婷婷开心网| 日本婷婷色日| 五月激情影院| 久久久久久久久久久久久久久久久精典| 六月婷婷激情| 五月丁香六月婷| 丁香色影院| 成人毛片在线免费观看| 激情五月综合色| 激情五婷网| 亚洲超碰在线| 草草夜夜操| 久热欧美| 婷婷色色欧美| 性视频久久| 五月天丁香婷婷久久九| 91啪啪视频| 欧美日本一区二区三区| AV色婷婷| 综合狠久久| 婷婷五月天播| 色婷婷五月天视频在线| 大香蕉五月天婷婷| 9久久精品视频| VA婷婷| 五月性色| www免费在线视频| 五月丁香婷婷色| 日韩99精品| 亚洲亚洲人成综合网络| 久久婷婷五月丁香网| 婷婷五月天香蕉| 久久伊人五月天| 99日精品视频| 丁香五月色欲| 色色激情五月天| 久久99久久久| 天天色官网| 欧美大片免费播放器| 久久草中文日韩欧美| 91精品综合久久久久久五月丁香 | 日本色色色| 99re免费在线视频| 色色网站免费观看| 99精品在线| 九月婷婷久久久| 天天爽夜夜爽夜夜爽精品视频| 操碰91| 99精品在线| 五月天com| 超碰人妻公开在线| 玖玖资源部在线播放| 久久激情五月婷婷| 欧美日韩成人在线网| 99热99这里免费的精品| 女人被躁到高潮嗷嗷叫小| 六月婷婷无码| 五月丁香六月香香蕉| 爆乳熟女-区二区三区| 婷婷激情网五月天| 亚洲激情综合| 天天色情站| 91一起操| 色综合久久久久| 一区二区免费看| 欧美色色干| 色色色色五月| 久久婷婷综合色丁香| 五月激情基地| 国内自拍1区| 深爱五月天 开心网| 风流少妇A片一区二区蜜桃| 丁香五月天啪啪| 高清无码网址| 久久xx| 色婷婷影院|