長(zhǎng)寬數(shù)據(jù)格式比較_歸納分析

之前寫(xiě)過(guò)關(guān)于長(zhǎng)寬數(shù)據(jù)轉(zhuǎn)換的文章,而今再看tidyr包挂滓,幾乎又迷暈進(jìn)去,所以再次梳理啸胧。翻來(lái)覆去的實(shí)踐赶站,其目的在于熟練數(shù)據(jù)之間的自由轉(zhuǎn)換,以便在處理更大數(shù)據(jù)時(shí)不至于迷失纺念。

  • image.png

寬數(shù)據(jù):

  1. 寬數(shù)據(jù)是指數(shù)據(jù)集對(duì)所有的變量進(jìn)行了明確的細(xì)分贝椿,各變量的值不存在重復(fù)循環(huán)的情況也無(wú)法歸類(lèi)。數(shù)據(jù)總體的表現(xiàn)為 變量多而觀(guān)察值少陷谱。
  2. 每一列為一個(gè)變量烙博,每一行為變量所對(duì)應(yīng)的值。

長(zhǎng)數(shù)據(jù):

  1. 長(zhǎng)數(shù)據(jù)一般是指數(shù)據(jù)集中的變量沒(méi)有做明確的細(xì)分烟逊,即變量中至少有一個(gè)變量中的元素存在值嚴(yán)重重復(fù)循環(huán)的情況(可以歸為幾類(lèi))渣窜,表格整體的形狀為長(zhǎng)方形,即 變量少而觀(guān)察值多宪躯。
  2. 一列包含了所有的變量乔宿,而另一列則是與之相關(guān)的值。

1. 長(zhǎng)寬數(shù)據(jù)轉(zhuǎn)換

##########################################################################
#2020-06-24
# 2020-06-25  長(zhǎng)款數(shù)據(jù)格式作圖比較
rm(list = ls())

id <- 1:8
gene <- c(rep("ago", 4), rep("dcr", 4))
value <- c(2.0, 3.0, 2.5, 3.0, 5.0, 4.0, 6.0, 5.5)

dd <- data.frame(id, gene, value)
dd # 長(zhǎng)數(shù)據(jù)
  id gene value
1  1  ago   2.0
2  2  ago   3.0
3  3  ago   2.5
4  4  ago   3.0
5  5  dcr   5.0
6  6  dcr   4.0
7  7  dcr   6.0
8  8  dcr   5.5

dd_2 <- dd %>%
  spread(key = "gene", value = "value")
dd_2 # 寬數(shù)據(jù)
  id ago dcr
1  1 2.0  NA
2  2 3.0  NA
3  3 2.5  NA
4  4 3.0  NA
5  5  NA 5.0
6  6  NA 4.0
7  7  NA 6.0
8  8  NA 5.5

dd_3 <- dd_2 %>%
  gather("ago", "dcr", key = "gene", value = "value")
dd_3 
   id gene value
1   1  ago   2.0
2   2  ago   3.0
3   3  ago   2.5
4   4  ago   3.0
5   5  ago    NA
6   6  ago    NA
7   7  ago    NA
8   8  ago    NA
9   1  dcr    NA
10  2  dcr    NA
11  3  dcr    NA
12  4  dcr    NA
13  5  dcr   5.0
14  6  dcr   4.0
15  7  dcr   6.0
16  8  dcr   5.5

2. 長(zhǎng)寬數(shù)據(jù)繪圖比較

library(ggplot2)
library(ggsignif)
# dd長(zhǎng)數(shù)據(jù)格式访雪,可以直接作圖
compaired <- list(c("ago", "dcr"))
ggplot(dd, aes(x = gene, y = value, fill = gene)) +
  geom_boxplot() +
  geom_signif(comparisons = compaired,
            map_signif_level = T)

# dd_2寬數(shù)據(jù)格式详瑞,是不能繪制圖形的

# dd_3長(zhǎng)數(shù)據(jù)格式也是可以的
compaired <- list(c("ago", "dcr"))
ggplot(dd_3, aes(x = gene, y = value, fill = gene)) +
  geom_boxplot() +
  geom_signif(comparisons = compaired,
              map_signif_level = T)
Rplot.png

3. 輸入錄入格式及轉(zhuǎn)換方法

用R繪圖,和以往的GraphPad繪圖時(shí)候臣缀,數(shù)據(jù)的錄入方式有些不一樣蛤虐,所以在一開(kāi)始時(shí)候這個(gè)思維很難轉(zhuǎn)換,甚至沒(méi)有摸清楚數(shù)據(jù)的錄入和繪圖的整體流程肝陪。下面圖標(biāo)列出了常見(jiàn)的格式錄入方式。
A: GraphPad類(lèi)
以GraphPad作圖軟件錄入為例刑顺,若按照此類(lèi)錄入氯窍,本質(zhì)上是寬數(shù)據(jù)格式,
需要將其轉(zhuǎn)換為長(zhǎng)數(shù)據(jù)格式蹲堂,tidyrreshape2兩個(gè)包可用狼讨,如下

id <- 1:4
ago <- c(2.0, 3.0, 2.5, 3.0)
dcr <- c( 5.0, 4.0, 6.0, 5.5)
mm <- data.frame(id, ago, dcr)
mm # 寬數(shù)據(jù)

library(tidyverse)
mm2 <- mm%>%
  gather("ago","dcr",key = "gene", value = "value")
mm2

library(reshape2)
mm3 <- mm%>% 
  melt(id.vars = "id", measure.vars = c("ago","dcr"), 
      variable.name = "gene",value.name = "value") 
mm3
 id gene value
1  1  ago   2.0
2  2  ago   3.0
3  3  ago   2.5
4  4  ago   3.0
5  1  dcr   5.0
6  2  dcr   4.0
7  3  dcr   6.0
8  4  dcr   5.5

B: widetype
此處的實(shí)例,在我的之前文章中多處用到柒竞。[1][2]

id <- 1:2
gene <- c("ago","dcr")
x1 <- c(2, 5)
x2 <- c(3, 4)
x3 <- c(2.5, 6)
x4 <- c(3, 5.5)
nn <- data.frame(id, gene, x1, x2, x3, x4)
nn

nn2 <- nn %>%
  gather(key = rep,
       value = value, x1:x4, factor_key = TRUE)
nn2

nn3 <- nn %>%
  melt(id.vars = c("id","gene"), measure.vars= c("x1","x2","x3","x4"),
       variable.name = "rep", value.name = "value")
nn3
  id gene rep value
1  1  ago  x1   2.0
2  2  dcr  x1   5.0
3  1  ago  x2   3.0
4  2  dcr  x2   4.0
5  1  ago  x3   2.5
6  2  dcr  x3   6.0
7  1  ago  x4   3.0
8  2  dcr  x4   5.5

C: longtype
長(zhǎng)數(shù)據(jù)格式政供,沒(méi)有寬數(shù)據(jù)格式可讀性強(qiáng),但是機(jī)器學(xué)習(xí)需要的就是長(zhǎng)數(shù)據(jù)格式,以SPSS等為代表布隔。

image.png

  1. R繪圖應(yīng)用實(shí)例:數(shù)據(jù)錄入离陶、轉(zhuǎn)換及繪圖 ?

  2. 數(shù)據(jù)錄入與格式轉(zhuǎn)換(reshape2、tidyr包) ?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末衅檀,一起剝皮案震驚了整個(gè)濱河市招刨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌哀军,老刑警劉巖沉眶,帶你破解...
    沈念sama閱讀 206,013評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異杉适,居然都是意外死亡谎倔,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)猿推,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)片习,“玉大人,你說(shuō)我怎么就攤上這事彤守√赫欤” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,370評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵具垫,是天一觀(guān)的道長(zhǎng)侈离。 經(jīng)常有香客問(wèn)我,道長(zhǎng)筝蚕,這世上最難降的妖魔是什么卦碾? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,168評(píng)論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮起宽,結(jié)果婚禮上洲胖,老公的妹妹穿的比我還像新娘。我一直安慰自己坯沪,他們只是感情好绿映,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,153評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著腐晾,像睡著了一般叉弦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上藻糖,一...
    開(kāi)封第一講書(shū)人閱讀 48,954評(píng)論 1 283
  • 那天淹冰,我揣著相機(jī)與錄音,去河邊找鬼巨柒。 笑死樱拴,一個(gè)胖子當(dāng)著我的面吹牛柠衍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播晶乔,決...
    沈念sama閱讀 38,271評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼珍坊,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了瘪弓?” 一聲冷哼從身側(cè)響起垫蛆,我...
    開(kāi)封第一講書(shū)人閱讀 36,916評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎腺怯,沒(méi)想到半個(gè)月后袱饭,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,382評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡呛占,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,877評(píng)論 2 323
  • 正文 我和宋清朗相戀三年虑乖,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片晾虑。...
    茶點(diǎn)故事閱讀 37,989評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡疹味,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出帜篇,到底是詐尸還是另有隱情糙捺,我是刑警寧澤,帶...
    沈念sama閱讀 33,624評(píng)論 4 322
  • 正文 年R本政府宣布笙隙,位于F島的核電站洪灯,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏竟痰。R本人自食惡果不足惜签钩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,209評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望坏快。 院中可真熱鬧铅檩,春花似錦、人聲如沸莽鸿。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,199評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)祥得。三九已至兔沃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間啃沪,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,418評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工窄锅, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留创千,地道東北人缰雇。 一個(gè)月前我還...
    沈念sama閱讀 45,401評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像追驴,于是被迫代替她去往敵國(guó)和親械哟。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,700評(píng)論 2 345