制作一个NA数值为数字的矩阵

时间:2019-06-25 19:49:31

标签: r matrix heatmap

我没有最新的问题,但已经阅读并尝试了我能找到的所有内容,但都无济于事。 我的目标是从具有很多NA值的数据制作热图。我有一个177x11 xls表,我的数据是10个比较的176个差异表达基因的FoldChange(值从-5,18到11,02)。 我的问题是我无法对此数据进行数值矩阵运算,因此无法生成热图。

我得到的最接近的是使用我得到的at this question的以下命令进行转换: (尝试过几次,但这是唯一将TRUE返回给is.numeric的变量)

mat <- as.matrix(data)
row.names(mat) <- mat[,1]
mat <- mat[,-1]
mat <- sapply(mat, as.numeric)
is.numeric(mat) #TRUE

但是从heatmap命令仍然收到错误消息

heatmap(mat)
Error in heatmap(mat) : 'x' must be a numeric matrix

我的数据:

                C0vsC12     C0vsC24      C0vsT12     C0vsT24   C12vsC24     C12vsT12     C12vsT24     C24vsT12     C24vsT24     T12vsT24
gene10120          <NA>        <NA>         <NA> 1,213170547       <NA>         <NA>  1,123194077         <NA>         <NA> 0,7792280505
gene10247 -0,6708813033        <NA>         <NA>        <NA>       <NA> 0,8598045899 0,7829357937         <NA>         <NA>         <NA>
gene1032    1,378061661 2,042870229         <NA>        <NA>       <NA>         <NA>         <NA> -1,527173422 -1,527173422         <NA>
gene10377          <NA> 1,803821023         <NA>  1,89978346 1,74646153         <NA>  1,834010837 -1,849005147 -1,849005147  1,938460569
gene10467          <NA>        <NA> -1,011282724        <NA>       <NA> -0,922740647         <NA> -1,171151886 -1,171151886  1,297253685
gene10529          <NA>        <NA> -1,720724529        <NA>       <NA>         <NA>         <NA>         <NA>         <NA>         <NA>

“数字”矩阵如下所示(只是其中的一部分):

structure(c(NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, 
NA_real_), .Names = c(NA, "-0,6708813033", "1,378061661", NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, "-0,7571104188", NA, NA, NA, NA, NA, "0,8833872859", 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "-0,6892789513", 
NA, NA, NA, NA, "-0,8297914588", "-0,6868436186", NA, NA, NA, 
NA, NA, "-0,7607811156", NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, "0,6163008345", NA, NA, "2,042870229", "1,803821023", NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
"-0,6816546611", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, "-1,011282724", "-1,720724529", "-1,14882796", 
NA, "-1,064854931", "4,102143891", NA, "1,661527301", NA, "5,095997124", 
"0,9133722606", "1,868416916", "1,637004853", NA, "3,517522062", 
"2,083747425", "1,523230573", "1,849253304", NA, NA, NA, "0,9306790445", 
"-1,062442899", "-1,176330787", "-2,710491387", "-1,480669494", 
NA, NA, "0,9777491518", NA, NA, NA, "0,7681252032", "0,6301085726", 
"-2,32268854", NA, NA, "-1,289301326", "-1,494957671", NA, "-0,7254508759", 
NA, NA, NA, "1,221566025", "-2,95189949", "-1,310351167", "-0,8732731726", 
"-1,904882379", "-0,7041243891", NA, "1,79437725", NA, "0,8258023835", 
"-1,80439866", "-3,466153797", "-0,9458963861", NA, "-1,202565609", 
"-2,460594779", "0,8392283651", "1,213170547", NA, NA, "1,89978346", 
NA, NA, "-1,029939997", NA, "-1,446086401", NA, NA, NA, "-0,6629551241", 
"4,099016269", "1,085262503", "2,932959589", NA, NA, "2,093063487", 
NA, "1,915848274", NA, NA, NA, "-0,9962349794", NA, "-2,10037681", 
NA, NA, NA, "-0,6210117273", "1,331372413", NA, "1,975658524", 
"1,211549921", "-1,233471262", NA, NA, NA, "1,399379313", NA, 
"-0,6740016669", NA, "-1,01124412", NA, "-2,390943665", NA, NA, 
"0,8565706577", "-2,867120677", "-1,35053717", "-1,521508746", 
"-1,037313268", "-1,900548874", "0,6094680988", "1,945517617", 
NA, NA, "-1,952521244", "-1,498026229", NA, "-1,40522647", "-0,7726975585", 
NA, "0,6705689582", NA, NA, NA, "1,74646153", NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "0,694357608", 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "0,8598045899", NA, NA, 
"-0,922740647", NA, "-1,142811945", NA, "-1,08035035", "4,192213438", 
"1,233850588", "2,210412903", NA, "4,834885409", "0,9480776802", 
"1,825836912", "2,114830539", NA, "4,026107714", "2,016130458", 
"1,478036658", NA, NA, NA, NA, "1,187772243", NA, "-1,058109756", 
"-2,42424694", "-2,361846044", NA, NA, "1,079248107", NA, NA, 
NA, "0,8574188354", "0,8751229474", "-1,890357045", NA, NA, "-0,5977094019", 
NA, NA, "-0,8422891094", NA, "1,17095774", "1,173785251", "1,249815231", 
"-2,871954831", "-2,00499841", "-0,8239583587", "-1,694191205", 
NA, NA, "1,810281832", NA, "0,7994156775", NA, "-4,001283207", 
"-0,9079146004", "-1,079043267", "-1,061229437", "-2,567940513", 
NA, "1,123194077", "0,7829357937", NA, "1,834010837", NA, NA, 
"-1,028641048", NA, "-1,469574719", NA, NA, "1,402427256", "-0,8254210766", 
"3,821792519", "1,110334347", "2,882993624", NA, "-2,22064757", 
"2,58667136", NA, "1,858988288", NA, "-2,162519909", "0,6237718206", 
NA, NA, "-1,571255273", NA, NA, "-1,54719474", "-0,5829175255", 
"1,234230151", NA, "2,663153224", "1,466171852", "-1,330471429", 
NA, NA, NA, "1,5248916", "1,005234764", NA, NA, "-0,6807612469", 
NA, NA, NA, NA, "0,8736322162", "-2,78670184", "-2,053482171", 
"-1,478627584", "-0,831661332", "-1,145778843", "1,118941048", 
"1,951889007", NA, NA, NA, "-2,034225796", NA, "-1,668538414", 
"-0,6378353422", NA, NA, NA, NA, "-1,527173422", "-1,849005147", 
"-1,171151886", NA, NA, "-0,5816710932", NA, "2,727173764", NA, 
"1,364994615", NA, NA, NA, NA, "2,441860943", NA, "2,233498248", 
"1,303446426", NA, NA, NA, NA, NA, "0,6516369852", NA, "-1,417670848", 
"-2,910890561", "-1,712052143", NA, NA, NA, NA, NA, NA, "0,8240507971", 
"0,7066771301", "-1,678864376", NA, NA, "-1,032925626", NA, NA, 
NA, NA, NA, "0,8925829987", "0,7056065538", "-2,282143331", "-1,155465238", 
NA, "-1,525091129", NA, NA, NA, "-0,586719217", NA, NA, "-3,775247636", 
"-0,9727188025", NA, "-0,8815881317", "-2,487155486", NA, NA, 
NA, "-1,527173422", "-1,849005147", "-1,171151886", NA, NA, "-0,5816710932", 
NA, "2,727173764", NA, "1,364994615", NA, NA, NA, NA, "2,441860943", 
NA, "2,233498248", "1,303446426", NA, NA, NA, NA, NA, "0,6516369852", 
NA, "-1,417670848", "-2,910890561", "-1,712052143", NA, NA, NA, 
NA, NA, NA, "0,8240507971", "0,7066771301", "-1,678864376", NA, 
NA, "-1,032925626", NA, NA, NA, NA, NA, "0,8925829987", "0,7056065538", 
"-2,282143331", "-1,155465238", NA, "-1,525091129", NA, NA, NA, 
"-0,586719217", NA, NA, "-3,775247636", "-0,9727188025", NA, 
"-0,8815881317", "-2,487155486", NA, "0,7792280505", NA, NA, 
"1,938460569", "1,297253685", NA, NA, NA, NA, "-2,254931927", 
NA, "-0,8089649939", NA, NA, NA, "1,055731761", "-3,475591227", 
NA, "-1,438808968", NA, NA, NA, NA, NA, NA, NA, NA, NA, "2,833925306", 
NA, NA, "1,018527805", NA, NA, "1,057346735", "-1,280041913", 
"-0,9919286322", "-0,8941532811", "1,797270928", "1,800669612", 
"1,095242155", "0,6091239711", NA, "-1,09116174", NA, NA, NA, 
"-0,982181148", NA, NA, NA, NA, "0,8610467763", "-1,208151571", 
"1,12947883", NA, NA, "-0,7382658493", NA, "1,966598868", NA, 
NA, NA, "1,853832412", NA))

当然,我会改善Heatmaps参数,现在我只希望它与我的数据一起使用。 我看不到那些“ NA_real_”来自哪里,甚至即使in.numeric(mat)返回TRUE,热图仍然要求数字矩阵的原因。

(显然,我不是编程专家,尽管我总是在这里寻找解决方案,但这是我提出问题的主要时间,欢迎提供提示和建议)

预先感谢

编辑

在这里,我做了逗号到点的更改并添加了nrow和ncol属性后的dput

mat <- as.matrix(df, nrow = 176, ncol = 11)
dput(mat[1:30, ])
structure(c(NA, -0.6708813033, 1.378061661, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, -0.7571104188, 
NA, NA, NA, NA, NA, 0.8833872859, NA, NA, 2.042870229, 1.803821023, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, -1.011282724, 
-1.720724529, -1.14882796, NA, -1.064854931, 4.102143891, NA, 
1.661527301, NA, 5.095997124, 0.9133722606, 1.868416916, 1.637004853, 
NA, 3.517522062, 2.083747425, 1.523230573, 1.849253304, NA, NA, 
NA, 0.9306790445, -1.062442899, -1.176330787, -2.710491387, -1.480669494, 
1.213170547, NA, NA, 1.89978346, NA, NA, -1.029939997, NA, -1.446086401, 
NA, NA, NA, -0.6629551241, 4.099016269, 1.085262503, 2.932959589, 
NA, NA, 2.093063487, NA, 1.915848274, NA, NA, NA, -0.9962349794, 
NA, -2.10037681, NA, NA, NA, NA, NA, NA, 1.74646153, NA, NA, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 
NA, 0.694357608, NA, NA, NA, NA, NA, NA, NA, 0.8598045899, NA, 
NA, -0.922740647, NA, -1.142811945, NA, -1.08035035, 4.192213438, 
1.233850588, 2.210412903, NA, 4.834885409, 0.9480776802, 1.825836912, 
2.114830539, NA, 4.026107714, 2.016130458, 1.478036658, NA, NA, 
NA, NA, 1.187772243, NA, -1.058109756, -2.42424694, -2.361846044, 
1.123194077, 0.7829357937, NA, 1.834010837, NA, NA, -1.028641048, 
NA, -1.469574719, NA, NA, 1.402427256, -0.8254210766, 3.821792519, 
1.110334347, 2.882993624, NA, -2.22064757, 2.58667136, NA, 1.858988288, 
NA, -2.162519909, 0.6237718206, NA, NA, -1.571255273, NA, NA, 
-1.54719474, NA, NA, -1.527173422, -1.849005147, -1.171151886, 
NA, NA, -0.5816710932, NA, 2.727173764, NA, 1.364994615, NA, 
NA, NA, NA, 2.441860943, NA, 2.233498248, 1.303446426, NA, NA, 
NA, NA, NA, 0.6516369852, NA, -1.417670848, -2.910890561, -1.712052143, 
NA, NA, -1.527173422, -1.849005147, -1.171151886, NA, NA, -0.5816710932, 
NA, 2.727173764, NA, 1.364994615, NA, NA, NA, NA, 2.441860943, 
NA, 2.233498248, 1.303446426, NA, NA, NA, NA, NA, 0.6516369852, 
NA, -1.417670848, -2.910890561, -1.712052143, 0.7792280505, NA, 
NA, 1.938460569, 1.297253685, NA, NA, NA, NA, -2.254931927, NA, 
-0.8089649939, NA, NA, NA, 1.055731761, -3.475591227, NA, -1.438808968, 
NA, NA, NA, NA, NA, NA, NA, NA, NA, 2.833925306, NA), .Dim = c(30L, 
10L), .Dimnames = list(c("gene10120", "gene10247", "gene1032", 
"gene10377", "gene10467", "gene10529", "gene10533", "gene10593", 
"gene10632", "gene10774", "gene10836", "gene10889", "gene10984", 
"gene11115", "gene11293", "gene11393", "gene11453", "gene11454", 
"gene11456", "gene11458", "gene11696", "gene11704", "gene11754", 
"gene1193", "gene11930", "gene11932", "gene11948", "gene11991", 
"gene12117", "gene12118"), c("C0vsC12", "C0vsC24", "C0vsT12", 
"C0vsT24", "C12vsC24", "C12vsT12", "C12vsT24", "C24vsT12", "C24vsT24", 
"T12vsT24")))

0 个答案:

没有答案
相关问题