99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

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
返回資訊列表
99re这里只有精品视频6| 色99视频| 丁香五月婷婷狠狠色| 99久视频| 丁香五月在线自慰| 99热6精品| 久久99久久99久久99人受| 国产精品久久久久9999小说| www.激情五月| 丁香五月网址| 成人永久免费视频在线观看| 五月天婷婷在线AN| 久久人妻高清中文| 五月激情婷婷播播网| 久久色婷婷| 影音先锋五月天婷婷丁香在线观看| 久久女婷| 黄色五月婷婷| 婷婷情色五月天| 久色网五月| 狠狠大香婷婷爱| 99日在线观看视频| 色月丁| 99亚洲精品| 任你爽视频| 天天干天天干天天干天天干天| 激情五月激情综合网一级丸片| 激情九九六月激情免费视频| 99久久新视频| www.99免费视频| 日韩性爱AV| 91精品综合久久久久久五月丁香| 日本99久久| 99热精品中文字幕| 99精品视频网| 超碰在线免费9| 五月天激情无码| 人人干Av| 亚洲精品大片| 激情综合五月婷婷| 91干在线| 亚洲av免费在线| 国产密乳av一区二区三区四区| 激情五月天网页| 26uuu四色| 日本系列_4页_777FP| 精品导航在线x不卡| 亚韩精品视频1区| 国产69久久久欧美黑人A片| 亚洲六月婷婷| 日韩丰满少妇无码内射| 嫩草免费视频| 婷婷黄色五月| 免费婷婷| 久热这里只有精品在线观看 | 婷婷丁香日韩五月| 婷婷五月天渟渟| 成人草榴视频| 欧美日本97| 97在线刺激| 99热思思| 亚洲日日日| 丁香五月另类色婷婷麻豆| 天天干天天拍| 五月丁香六月香香蕉| 丁香五月天社区| 六月丁香激情| 可以免费观看的AV| 久久五月激情| 大香蕉综合在线| 五月丁香香蕉| 99热热热99精品婷婷| 少妇性按摩无码中文A片 | 高清视频一区| 色五月婷婷成人视频| 乱女乱妇熟女熟妇综合网站| 九热视频| 色婷婷小说网| 亚洲成人网址在线观看| 久热99热| 色欲五月天| 六月丁香深深爱| 亚洲va欧美va国产综合久久久| 99热这里只有精品搜| 婷婷99狠狠| 色色色色色色色色网站| 伊人大香蕉爱聚| 五月丁香久久婷| www.黄色片-久久成人国产精品在线播放-999AV | 色欲一二三| 五月天停婷基地| 亚韩在线视频| 91婷婷五月天综合视频| 日日干夜夜干| 欧美情色一区| 91人妻PORNY九色大屁股| 在线va网站| 丁香婷停五月激情综合深爱| 亚洲午夜电影| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 深爱激情综合| 国产成人AV| 六月婷婷操逼| 99热国品免费| 婷婷五月成人| 五月婷婷激情色情网| 日韩三及成人AV片| 久热婷婷在线视频| 天天操天天爽天天爱| 99视频在线精品免费观看2| 先锋资源91| 91碰碰| 微拍92| 午夜免费试看| 5五月综合网亚洲| 五月婷婷中文字幕| 成人资源在线| 成人九九视频| 99ER热精品视频| 欧美婷婷综合| 婷婷五月丁香激情色情| 五月天婷婷激情在线色图| www.lchjjc.com| 香蕉婷婷色五月| 婷婷丁香五月激情图片| 日本高清久久| 天堂爱啪啪| 婷婷五月天少妇| 丁香五月情| 婷婷色五月综合| AV在线大香蕉| 久re热视频| 亚洲无AV在线中文字幕| 丁香激惜男女| 五月天狠狠| 91精品无码| 亚洲偷| 色播丁香| 人妻22p| 丁香六月天婷婷| 五月婷婷五月丁香综合| 四色99久久| 碰久久精品w| 在线va网站| 色婷婷亚洲婷婷| 日本婷婷五月天| 无码免费人妻A片AAA毛片西瓜| 热久国产| 天天肏视频| 欧美超碰亚洲| 欧美狠狠地| 欧美搡BBBBB摔BBBBB| 91精品婷婷国产综合久久| 激情五月丁香六月综合AVXXXX| 婷婷久久久| 在线婷婷| 五月丁香六月婷婷久久| 99视频内射三四| 色五月婷婷综合在线| 99热黄| http://www.lingjunshare.com/| 97在线观视频免费观看| 五月激情精品视频| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 国产激情AV| 五月丁了香蕉综合| 人妻视频在线| 国产成人AV在线| 99乱视频| 少妇激情基地| 激情婷婷丁香| 丁香五月久久综合| 微拍92| 亚洲激情色色| 九九九九中文字幕| 97色欧美| 精品久久二6| 婷婷在线精品| 婷婷久久午夜网| 91日韩在线| 亚洲视频五区| 五月天激情四射| 美女丁香五月天| 五月丁香色色网| www.91.com处女在线直播| 婷婷五月av| 99视频地址| 激情五月婷婷| 丁香五月区| 色婷婷狠狠禁久久| AV成人在线播放| 色色色色色五月丁香| 综合色影院| 五月丁香六月综合基地| 俺也去色| 99久久性爱| 综合www色| 大天天伊人| 日本啪啪网| 黄网免费看| 九九五月天| 婷婷亚洲综合| 色色网站在线| 爱射综合| 182无码| 国产婷婷五月在线视频| 欧洲亚洲免费视频9| 五月天激情国产综合婷婷| 国内婷婷丁香社区在线播放| 啪啪五月综合| 99久久综合网| 五月色色激情网| 九九www| 成人在线不卡| 欧美成人网婷婷综合在线| 五月婷婷婷色| 丁香五月久久| 激情小说婷婷五月| a网站免费观看| 精品人妻伦九区久久AAA片| 五月天激情婷婷丁香| 美女91一起草| 色五月激情五月| 亚洲激情综合免费| 九九视频免费| 色久99| 亚洲综合在线视频| 天天高潮夜夜爽| 另类伊人婷婷| 国产av网| 激情av| 五月天精品视频| 五月婷婷综合激情网| 99在线精品免费视频| 五月天婷婷在线AN| 天天操夜夜夜拍拍拍| 99热99| 天天狠狠夜夜狠狠2023| 久久婷婷亚洲| 婷婷丁香五月天亚洲| 色五月五月婷婷| 国自产拍偷拍精品啪啪一区二区 | 亚洲激情AV| 日本久久爱| 色五月成人| 大香蕉久久综合网| 亚洲激情综合| 五月婷婷五月天| 淫水导航| 欧美激情xxxXX| 99碰视频| 丁香婷婷激情四射五月| 精品夜夜澡人妻无码AV| 26UUU欧美| 五月天激情视频网站| 91久久婷婷| 日操熟女| 伊人高清无码| 婷婷丁香社区| 色五月av| 色婷五月| 日韩成人AV在线播放| 五月丁香六月婷婷a v| 丁香五月自拍| 97香蕉久久超级碰碰高清版| 极品另类| 五月天色站| 国产肥白大熟妇BBBB视频| 激情久久五月天| 亚洲色情在线| 成年人看Va免费视频| 婷婷五月天Av| 成人必爱视| 91丨九色丨白浆| 1024在线观看免费视频| 玖玖@三月天天丁香婷婷| 天天爱天天爽| 五月天伊人| www.五月天婷婷| 五月花综合视频| 欧美成人网婷婷综合在线| 爱性综合网| 亚洲一区国产传媒| 六月丁香啪啪啪| 精品九九网| 丁香五月成人自拍| 色情开心五月| 1024婷婷综合久久五月天| 丁香五月婷婷操逼| 91九九热| 99视频91| 色色狼人综合| 99热国产精品| 欧日美女Va| 青青草原中文字幕| 激情五月天综合图片小说网站| 思思热天天看| 青青草a在线| 色婷婷手机在线| 超碰人人操在线| 182TV大香蕉| 国产91在线视频| 99热最新国内| 五月丁香婷婷色播无码| 九九热99精品| 亚洲人人操| 丁香色影院| 久99精品视频| 香蕉婷婷色五月| 日韩日比视频| 色婷婷久久| 一逼色综合| jiujiu热在线视频| 思思99精品视频在线观看| 婷婷月五天在线在线看| 免費亭亭成人| 丁香五月停停av| 日韩在线婷婷五月天综合| 开心色五月天久久久久久久| 亚洲中文乱字字幕在线永久| 91久久九久久九久久九久久九久久| 五月五婷婷| 九九亚洲| 婷婷狠狠操| 99在线免费观看| 人人摸人人干| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 婷婷综合另类| www色五月| AV在线大香蕉| 六月婷婷狠狠| 激情五月天社区| 激情99| 国产激情综合五月久久| 国产婷伊人| 国产精品成av人在线视午夜片| 久久综合五月婷婷| 99综合视频一体| 五月色亭丁香| 久久久精品色色色| 人妻操逼视频| 婷久久高清| 亚州第一A片| 99色色| 女人露出p毛视频www网站| 天天干天天干天天干天天干天天干天天 | 色玖玖综合| 99热最新| 夜夜撸天天操| 99成人在线观看| 国产精品天天狠天天看| 2016日日夜夜操| 99这里只有精品视频免费| 亚洲综合丁香五月| 另类激情五月在线视频欧美| 五月天婷婷成人网| 在线99精品| 狠狠色丁香综合| 天天干天天叉| www.婷婷.com| 九九热青青草| 这里只有精彩小视频视频网站| 丁香婷婷十月| 亚洲五月婷婷| 99热99| 99色啊| 五月天综合在线观看| 久热久| www免费在线视频| 久99久在线观看| 成人色五月天| 婷婷天堂综合| 婷婷综合在线视频| 精品一区二区三区木瓜| WWW,五月| www.sebowuyue| 好吊丝aV| 成人一级片| 天天干天天日蜜臀av| 一级性感黄色内射视频| 五月情婷婷| 色色色9| 九月大香蕉| 国产一区二区av免费| 久久精品系列| 久久思思热视频| 色欲婷婷五月天丁香| 五月婷婷六月激情| 丁香婷婷综合五月天| 五月婷婷六月色| 激情内射人妻1区2区3区| 亚洲无码 图片区| 99久热| 五月婷婷丁香五月天| 中文成人在线| 欧美日综合| 九九人妻福利| 成人视屏在线观看| 五月 激情视频| 婷婷五月深深爱| 国产JK精品白丝AV在线观看| 激情小说五月天社区丁香| 99久久这里只有精品| 九色在线五月婷婷网址| 黄涩毛片| 江苏少妇性BBB搡BBB爽爽爽 | 九九热这里只有精品在线观看| 99自拍视频在线观看| 婷婷丁香五月基地| 婷婷激情五月色综合| 九月丁香婷婷| 色网站99| 四川BBB搡BBB爽爽视频| 激情婷婷人妻| 国产精品久久久久久久久久| 丁香五月另类小说在线阅读| 成 人片 黄 色 大 片| 99久热这里只有精品视频删减版| 五月天色色网站| 99久久精品国产色欲| 激情五月,婷婷五月,丁香五月| 久久加勤综合| 人人爱人人添| 夜夜干夜夜操| 色一区高清| 99热综合网| 六月99天天婷婷激情综合| 亚洲av网站| AV成人在线播放| 99热色精品| 亚洲综合在线网站| 久久在线大香蕉| 久草丁香婷婷五月天婷| 色婷另类| 丁香婷婷人妻| 五月婷婷啪| 狠狠色婷婷综合开心影视| 伊人网色婷婷五月天| 婷婷五月丁香国产| 色婷婷成人| www.九月婷婷丁香.com| 亚洲精品在线视频| 婷婷五月色| 伊人www22综合色| 九九热黄色| 天天狠狠夜夜狠狠2023| 日韩抽插操逼| 91色综合网站在线| 激情婷婷久久| 涩综合在线 | www.色五月| 五月情综合| 熟女色色一区二区| 色色色热| 色10月婷婷视频| 粉嫩AV久久一区二区三区| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 天天做夜夜爽| 五月天社区| 婷婷五月天丁香| 伊人丁香花综合影院| 成人片在线免费看| 久久久精品色| wWW九九在线播放| 色色色色色色色色五月先| 狠狠色婷婷7| 婷婷最新地址| 激情综合网五月丁香| 天天开心婷婷丁香五月| 亚洲成AV人片在线观看| 9|无码久久久久久| 六月色色婷婷| 99日精品视频| 99网| 九九色综合网| 天天爱天天做天天爽| 人人操人| 婷婷五月天伊人网| 亚洲成人va| 六月婷婷啪啪| 久久A极片| 操逼三区| 欧美综合五月丁香六月婷| 综合www色| 色五月大香蕉| 超级碰碰碰97免费| 色五月天成人在线| 综合久久综合久久| 伊人狼人干| 粉嫩av懂色av蜜臀av熟妇| 极品人妻videosss人妻| 亚洲综合无码| yirenjiqingshiping| 五月天成人综合| 激情五月亚洲| VA婷婷| 九九精品少妇| 爱久久小说下载网| 99色色视频| 综合网五月| 五月丁香婷婷AV天堂| 啪啪五月综合| 99欧美精品99日本精品| 天天插天天插| www.99热在线| 婷婷播5月| 婷婷热婷婷色| 丁香六月激| 五月天色色色色色| 无码成人AAAAA毛片AI换脸| 九热精品| 人妻久久久久久| 我要射综合| 久久五月天合网| 免费AV在线| 久久久久久久久久久久久久久久久精典| 日本欧美成人片AAAA| 欧美影院| 五月欧美丁香在线观看| 日操夜撸| 69激情小说| 激情com| 久久九九网| 射琪琪| 99热热热天天人人人超超碰| 久草婷婷| 久久九九99| 97精品综合久久| 五月天婷婷综合免费| 天天在线天天综合网色| 丁香激情五月综合网| av色婷婷| 99riAv1国产在线观看| 伊人玖玖综合| 人人叉久| 啪精品| 人人操99| 日日杆天天| 99色干| 狼友超碰| 手机旧版看人妻1025| 日本欧美成人片AAAA| 国产婷婷色综合AV蜜臀AV| 九九机热| 五月丁香六月欧美综合网站| 婷婷五月激情中文字幕| 六月丁香网| 国产无套精品一区二区| 人人爽天天爽| 五月丁香六月激情视频| 日本色99| 午夜五月天| 五月婷婷丁香在线| 婷婷综合网| 操91| 国产高清RV综合aVa| 欧美123区免| 婷婷影院A成人| 亚洲三A| 久久您您综合网| 五月天天丁香婷婷| 丁香五月婷婷高清| 啪啪色区| 成久综合视频| 提提热五月天婷婷| 五月天婷网| 色五月丁香五月天| 丁香色综合| 99综合在线| 久久九九热视频| 日日夜夜天天| 激情婷婷护士激情| 91九色在线视频| 97色久| 天天天天天天天干| 五月丁香黄色| 天天日天天操心| www久久久| 成人日韩欧美| 久久婷婷免费| 伊人9在线| 婷婷五月天美女| 99色色最新视频| 97婷婷五月天| 蜘蛛女侠2003满天星免费观看| 99久在线视频| 成人做爰高潮A片免费视频| 一级黄色片看看| 色婷婷久久综| 色综合天天网| 欧美婷婷五月天| 大香蕉五月丁香| 色播五月丁香| 久久久久久久久久婷婷| 九九热这里只有精品5| 婷婷中文字幕版| 色综合色| 99网| 99热网址| 开心五月天激情| 婷婷色啪| 超碰日韩人妻在线| 婷婷五月天久久| 日日射天天射| 亚洲成人AV在线观看| www。久久久久一b。Cc| www.91在线观看| 婷婷久久五月天亚洲欧美国产日韩在线观看| 都市激情五月婷婷亚洲| 婷婷五月激情中文字幕| 婷婷五月丁香A∨| site:hcxsz888.com| 亚洲99精品欧美一区| XX色综合| 九伊人网| 婷婷日日天天| 九九综合| 九九综合色综合| 思思热在线视频99| 亚洲天堂99| 六月丁香狠狠爱| 热99re| 亚洲色五月天| 人伦30P| 亚洲小视频| 欧美婷婷五月丁香| 国产三级在线播放| 操丝袜视频影院导航| 啪啪啪大香蕉| 国产成人AV在线播放| 色5月婷婷| 午夜色婷婷| a在线免费v| 狠狠插日日干撸| 91日韩在线| 99在线公开视频| 精品51XX| 激情婷婷丁香五月| 色色色色色色色综合| 99riAV国产精品视频| 久久久潮喷-久久久九九-成人AV| 三区激情四射av| 亚韩在线视频| 五月丁香色综合| 婷婷欧美激情| 99cao婷婷| 婷婷精品在线| 中文成人在线| 欧美又粗又大一区二区在线观看| 丁香五月激情网| 99噜噜噜| 五月婷婷丁香网| 色哟呦av| 久久开心五月婷婷| 影音先锋美国A| 99re在线观看视频| 精品夜夜澡人妻无码AV| 色色影院aaaav| 欧美婷婷综合| 亚洲日韩国产黑丝黑丝AVAV一区二区三区| 在线成人网址| 人人操AV| 国产午夜一区二区三区| 久久99网站| 99热播放| 青青.com| 久久亚洲婷婷| 亚洲色色图片| 日本黄色三级片内射| 久草五月天电影网| 色婷婷成人做爰A片免费看网站| 干亚洲天堂| 五月婷在线| 在线五月色播| 99这里有精品视频| 思思热精品免费视频| 51精品国自产在线| 99re这里有精品手机在线| 天天日天天肏天天奸| 婷婷色五月天综合网| 变态 另类 在线| 99久久精品视频女神1| 嫩草免费视频| 尔尔AV一区| 99人人干人人| 丁香六月啪啪| 天天舔夜夜操www com| 欧美性猛交99久久久久99按摩| 六月丁香婷啪射| av中文网| 99免费在线视频| 六月婷婷激情图片| 啪啪啪大香蕉| 婷婷五月天成人网站| 卡视频1区2区| 久久婷婷成人| 插插干干干色| 日韩精品一曲二曲三曲四曲五曲| 丁香五月天堂| 精品久久99| 国产熟妇的荡欲午夜视频| 狠狠色精品综合| 五月色亚洲| 久热婷婷| 99热99这里有免费的精品| 操比激情五月| 另类天堂| 丁香五月婷婷乱| 超碰97久久| 五月婷婷在线免费观看| 丁香五月激情视频在线| 精品网站:999WWW| 91啪啪视频| 色久综合天天做视频| 亚州操操| 国产又色又爽又黄又免费| 天天色,天天日,天天做| 91久操| 97人人干视频| 久久久久久久97| 亚洲综合干| 欧美日韩成人在线免费| 丁香五月影院| 99热在线看片| AV五月丁香| 中文字幕婷婷在线| www.婷婷五月天| 少妇达人正片在线播放_ikun_福利吧| 久久五月综合| 色综合色婷色基地| 麻豆AV一区二区三区| 99爱视频免费| 影音先锋 91工厂| 五月天婷婷情色| 极品人妻VIDEOSSS人妻| 在线另类视频| 五月婷婷丁香五月婷婷| 97色色色| 2021日韩无码| 熟妇人妻中文字幕无码老熟妇| 日韩AAAAA| 五月亭亭六月激情| 久久婷婷综| 加勒比久热| 天天综合精品| 欧洲亚洲免费视频9| 玖玖资源站蜜臀| 99久久66| 无码区婷婷五月花开| 丁香五月成人自拍| 午夜精品人妻无码一区二区三区| 激情婷婷五月| 狠狠干五月天| 武汉美女啪啪视频免费一级片| 99,色| 久久在线92| av在线免费播放观看| 五月丁香 啪啪| 人人摸人人干人人做| 婷婷综合激情五月中文字幕| 一区二区三区视频| 大香AV| 超碰成人影视| 婷婷无五月无码视频| 色香蕉影院| 97九色| 久久免费操| 99久在线精品99re8热| 五月成人网天天| 五月婷婷综合激情| 天天做天天要天天爱| 婷婷欧美综合| 伊人婷婷色| 婷综合六月| 九九色婷婷Av| 97成人操| 激情操逼婷婷| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 99热欧| 午夜丁香丁香婷婷| 五月玖玖| 色爱综合网| 日韩操逼大片| 超碰人人草| 婷婷久久久久| 99A级片| 人人97碰| 91天天操天天干天天射| 婷婷色在线视频| 日本人人草草| 干一干xxxx| 婷婷激情人妻| 亚洲小电影在线观看黄999| 婷婷丁香社区| 原琪琪色影院| 婷婷伊人久久| 亚洲中文字幕AV| 婷婷亚洲色| 狠狠干婷婷| 五月色婷婷综合色| 密臀久久| 情情五月天色| 五月宗合激情网| 看国产探花操逼三级片| 五月色综合网| 九九热精品99| 九月激情网| 丁香五月电影| 亚洲字幕AV一区二区三区四区| 亚洲中字AV电影在线网站| 亚洲AV久久久久久久久久久久久久久久 | 99热中文字幕久久| 丁香桃色网| 激情五月天网| 99久久性爱| 成人视频网| 一级视频网址| 久久色9| 九九色人| 婷婷五六日| 婷婷免费无视频| 五月婷婷开心综合| 日本色色网站| 思思热精品在线| 亚洲精品a成人在线播放| 婷婷丁香精品视频在线观看| 六月婷婷网| www.粉嫩av.com| 激情 婷婷 插| 天天插天天干| 色99视频| 五月婷婷香蕉视频| 日韩99视频| 欧美又粗又大一区二区在线观看| 这里只有精品69| 五月婷视频在线| 五月天婷婷色综合| 99久热视频在线| 五月天丁香成人社| 婷婷五月天AV激情| 婷婷激情社区| 欧美久热| 亲子乱AV-区二区三区| 六月婷欧美| site:esunnet.com| 久久国产色| 九九婷婷网五月天| 潮汕成人AV片在线| 色婷婷丁香五月天| 色狠狠综合入口| 色色色999| 少妇伦子伦精品无吗| 色色色色色色色色色色色色色97| 国产五月丁香在线| 婷婷综合在线| 开心激情站| 小泽玛利亚视频一区二区| 久久黄色免费视频| 99综合| 国产精品久久久久久久久久| 玖玖婷婷婷丁香五月| 久久久人妻人伦| 婷婷五月丁香在线视频| 性综合网| 国产肏屄大片| 爱的综合网| 五月丁香啪啪啪| 五月丁香本色在线观看| 九九久久五月天| 无码 色| 成人av免费观看| 九九99热| 性生活久久人妻| 99久在线精品99re8热| 激情五月天婷婷色色色色色色色色色色色| 激情网五夜婷婷| 另类综合激情| 青青久久91| 99热欧| 久99视频| 97日本在线| 激情综合五月色丁香婷婷| 婷婷五月天开心网| 黑人无码一区| 洗浴中心操B视频| 人妻久久久久久| 色吧综合网| 狠狠搞狠狠操| 婷婷五月综合中文字幕| 丁香婷婷激情五月色| 激情综合五月婷婷| 丁香五月婷婷欧美成人色图| 丁香五月天人体| 无码人妻激情| 色五月欧美| 色色综合色| 亚洲国产无线乱码在线观看| 色五月激情综合网| 狠狠操狠狠| 涩 五月 婷婷 狠狠| 欧美婷| 国产美女无遮挡裸体毛片A片| 9色在线| 婷婷综合精品| 婷婷午夜丁香| 影音先锋91| 久久婷婷丁香五月宗合| 99精吕视频在线观看了| www.韩日视频| 69er小视频| WWW.桔色成人.COM| 国产精品久久99| 九月激情网| 97视频久久| 婷婷操超碰| 在线观看av网站| 1区2区视频| 超碰97免费在线| www婷婷| 九热视频精品| 色玖玖导航| 久久99激情| 99福利导航| 97色天堂| 玖玖热视频| 99久久婷婷国产综合精品青桔| 久久久婷婷| 五月丁香综合| 五月综合无码| 色欲婷婷夜夜| 五月丁香综合网| 五月丁香啪啪激情| 曰韩少妇内射免费播放| 另类国产综合| 婷婷丁香五月社区亚洲| 久久只有18视频| 五月激情综合性爱| 狠狠爱婷婷丁香| 九九热黄色| 天天日天天舔| 丁香五月激情六月| 日本综合99| 五月婷婷五月丁香| 97色欧美| 99热最新| 婷婷色系婷色| 成人在线免费网址| 色偷偷综合| 日本系列_4页_777FP| 97色色色| 激情五月天无码| 日韩精品一曲二曲三曲四曲五曲| 日婷婷| 五月婷婷影院| www久久99| 日日撸日日操| 久久五月天免费网站| 超碰人人超碰| 69堂午夜视频最新地址| 乱岳熟女50岁| 亚洲精品国产精品乱码视99| 精品人妻在线| 色五月婷婷在线| 开心五月婷婷99| 婷婷成人AV| 欧美人妻一区二区| 五月天色网站| 婷婷操久久| 99在线免费视频| 中文字幕色色| 内射人妻视频国内| 五月成人天| 九九99精品| 秋霞少妇AV网站| 五月丁香婷婷深深爱| 另类视频一区| 五月天大香蕉av| 日本美女上人| 中文不卡一二三区| 丁香五月婷婷Av| 丁香成人五月天| 毛片毛片毛片毛片| 久热无码| ZpRSw| 五月婷婷色五月| 丁香五月色情| 91超级碰碰碰| 以及AA大片看看| 91精品综合久久久久久五月丁香| 五月丁香婷中文字幕| 五月婷婷啪啪啪| 丁香,开心成人,久久| 色播婷婷五月天| 9这里只有精品| 99碰超| AV亚洲在线| 五月开心久久| 激情五月天在线视频| aⅤ79成人片| 久9热插入| 激情五月综合网| 可以看的av网站| 天天色爽| 9色视频在线| 丁香五月伊人| 亚洲激情av| 五月丁香六月激情综合| 色五月成人网| 午夜婷婷丁香| 欧美WW在线网| 少妇被躁爽到高潮无码文| 成人av中文字幕| 人人人舔人人人操人人人摸人人人97| 日本a片网址| 欧美WW在线网| av在线免费播放观看| 99热免费观看| 日韩高清成人| 思思 热 99| 五月丁综合在线观看| 超碰免费99| 久久久久婷| 色插人人| www.色五月| 狠狠干伊人| 吊色AV男人的天堂| 以及AA大片看看| 99热久久这里只有精品| 欧美久热| 无码啪啪| 丁香综合婷婷五月天| 日日操,夜夜爽| 一夜福利不卡| 丁香五月天偷拍| 国产av基地| 伊人婷婷五月天av| 亚洲综合碰| 狠狠爱成人综合网| 九九伊人网| 五月婷婷激情综合| 久久伊人五月天| 久99在线视频| 噜噜狠狠色| 婷婷五月亚洲一本在线丁香| 丁香五月激情澎湃一区| 久久婷婷五月综合激情国产| 久热这里只有精品6官网亚洲| www.色五月.com| 色玖玖综合| 婷婷五月丁香花综合| 丁香五月很很肏| 999九九九久久久99HD| 伊大人久久| 国产毛片操B| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 成人做爰高潮A片免费视频| 五月天激情国产综合婷婷婷| 久久久久9999| 99色综合| 丁香六月婷婷久久综合| 五月激情婷婷丁香| 97天堂| 99免费在线视频| 婷婷成人五月天| 婷婷在线播放| 国产婷婷色综合AV蜜臀AV| 日本三级中国三级99人妇网站| 天天干天天拍| 99热精品在线观看| 丁香激情五月天| 成人做爰A片免费看视频| 香蕉人妻AV久久久久天天| 最近中文字幕2019视频1| 99燥99日| 久久婷婷五月综合色丁香花| 欧美,日韩成人在线| 玖玖婷婷五月天毛片| 久久青青日本视频| www.久9| 日本视频99| 99日本精品视频热| 五月色丁香综合| 色欲五月天| 色情综合网| 色J香五月天| 91九色精品| 色婷婷色99国产综合精品| 久久XX| 色香蕉婷婷| 色久一| 碰碰91| 老司机午夜福利视频金瓶梅| 色久免费| 五月天综合在线观看| 97影院一级片| 五月天婷婷小说| 极骚大香蕉伊人| 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 婷婷黄色网| 91色吧网| 久久五月天大美女| 99热成人在线观看| 波多野结衣AV无码Porn| 丁香色五月 97干| 丁香婷婷成年| 91人人澡人人爽人人看| 亚洲sesesese| A网在线欧洲| 99热思思| 久久大香蕉| 色色色1网址| 日本啪啪天堂| 天天干天天 亚洲| 成人精品亚洲性爱| 综合色图区| 一区二区无码视频| 99在线视频色版| 天天在线久久综合 | 99久久国产综合精品五月天喷水\| 2016日日夜夜操| 激情com| 婷婷五月天开心网| 色丁香五月| 色爱爱综合网| 久久婷婷亚洲| 九九热视频免费| 久婷婷色| 四季8848精品成人免费网站| 久久久.COM| 亚洲婷婷婷| 亚洲精品无码久久| 伊人久久大香线蕉精品| 亚洲美女高潮久久久久久69| 久久黄色免费视频| 五月婷婷六月丁香玖玖玫瑰91| 国产成人片| 婷婷丁香91| 婷婷五月天伦理| 深爱五月天| 婷婷五月天VI| 五月婷网| 亚洲操b| 粉嫩AV久久一区二区三区| 69综合在线| 色色婷婷综合网| 丁香五月天网站| 91丨人妻丨国产丨丝袜| 91丨熟女丨首页| 国产免费一区二区三区三州老师F1F1.CC| 欧美三级巜人妻互换| a九九热www| 婷婷五亚洲| 99热免费观看| 美欧日韩国产成人在战| 色月视频| 超碰AV在线| 伊人九九综合| 黄页大全十八禁| 天天操夜夜操| 99亚洲精美视频在线观看| 五月丁香六月花| 俺去也婷婷| 在线另类视频| 婷香五月激情视频| 国产午夜伦鲁鲁| 婷婷六月丁香在线| 色激情五月天| 大香人妻| 五月婷婷六月奇米网丁香| 久热这里只有精品6| 九九热99视频在线| 丁香五月亚洲| .青娱乐天天操B| 开心五月婷婷六月丁香| 影音先锋一区二区三区| 色青五月天| 久久成人天| 色色三级视频| 色色综合日韩| 99热9| 99热综合网| 丁香五月欧美| 99ri视频在线观看| 天天爽天天干天天| 强辱丰满人妻HD中文字幕| sisi热国产| 五月天激情久久| 色情久久久| 国产亚洲色婷婷久久99精品91| 久热爱大香蕉在线蜜臀悦色 | 中文字幕性爱丰满| 亚洲色五月婷婷| 亚洲成人在线观看网址| 婷婷激情综合网| 极品人妻VIDEOSSS人妻 | 色婷婷激情| 精品动漫 无码av| 色色免费网战视频| 婷婷六月香| 五月婷婷 激情五月| 色欲AVV| 九九爱激情| 欧美A片在线视频免费观看| 婷婷色情小说| 大鸡巴伊人网| 天天干com| 亚洲免费电影2| 五月婷婷影| 婷婷中文字幕网| 婷婷色五月开心五月| 久草a片| 久操福利| 五月天激情四射| 久久99久久99精品免视看婷婷| 操99| 色情婷婷五月天| 热久久思思热思思| 黄急一级视频| 狠狠色噜噜狠狠狠888了| 九九在线91| 丁香五月婷婷在线| 亚洲婷婷五月| 亚洲99热| 综合在线网| 午夜伊人大香蕉| 超碰1999| 婷婷五月天中文字幕| 91爱啪啪| 九九99视频精品| 国产AV一区二区三区最新精品 | 婷婷激情图片| 狠狠干2007| 色五月激情图片| 99免费在线| 婷婷丁香宗合888| 欧美成人精品A片免费一区99| www.夜夜操.con| 亚洲综合五月天婷婷| 婷婷五月激情视频| 中文字幕日韩成人| 午夜一区| 99久久精品网| 一级无码作爱片| 激情久久综合| 涩涩涩,com| 日韩av高清| 一区二区乱码视频| 五月激情丁香五月| 影音先锋 萱萱| 久久久免费精彩视频| 五月天社区| 草草色情综合网| 99精品综合| 欧美群妇大交乱婬网| 操逼电影免费看| 91九色视频在线观看| 久热这里只有精品性色AV| 久婷婷视平| www.五月天婷婷| 开心五月丁香综合久久| 99视频极品在线香蕉| 色情五月丁香| 五月婷婷丁香五月婷婷| 婷婷精品在线| 日韩AV免费电影在线播放| 影视av久久久噜噜噜噜噜三级|