【发布时间】:2019-02-28 19:26:53
【问题描述】:
我正在尝试将表列表合并到数据框中,删除一列并将其转换为按样本计数的“宽”表。 我已经加载了
library(tidyr)
library(dplyr)
另外,count.tables 是一个长度为 22 的列表
运行时
count.df.long <- bind_rows(count.tables, .id="Sample")
它给了我警告:
不相等的因素水平:强制到字符绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换为字符向量绑定字符和 因子向量,强制转换成字符向量
下一步
count.df.wide <- count.df.long %>% select(-"percent") %>%
spread(Sample, count)
我明白了:
错误:行标识符重复(2572、7337、12726、17661、 21013、27067、32036、38334、43223、49353、55049、58820、63874、68410、 73324, 76677, 81930), (24259, 46481), (1638, 6608, 11922, 16110, 20102、26133、30977、37723、42343、48437、54291、58335、62672、67791、 71971, 75944, 81169), (719, 5894, 11230, 15400, 19522, 25214, 30352, 36596、41348、46807、47557、53380、57427、62124、66883、71266、75198、 80171), (1792, 7089, 12285, 16581, 20543, 26287, 31527, 37878, 42488, 48596, 54313, 58508, 63003, 68108, 72622, 76042, 81280), (4907, 29402), (18736, 39958, 60499), (2957, 7438, 14843, 17092, 21436, 27452、32434、39173、43452、49540、56178、59821、64385、69488、82672), (1401、6379、11808、15987、20141、25896、31207、37357、42117、48419、 54132, 58199, 63159, 67944, 71942, 76002, 81011), (2600, 7622, 12579, 16842、21292、27095、32362、38749、43279、49226、55018、59297、63735、 68704, 73255, 77283, 82003), (1486, 6576, 11731, 15896, 20012, 25981, 31001、37319、41990、48375、53953、58211、
我想知道第一个错误是什么,如何修复它,以及第二个错误是否与第一个错误有关?
谢谢!
埃琳娜
【问题讨论】:
-
选择后创建一个序列列,即
count.df.long %>% select(-percent) %>% group_by(Sample) %>% mutate(rn = row_number()) %>%> spread(Sample, count) -
请注意,可重现的示例应该是minimal:您不使用包
DESeq2和ggplot2,因此无需加载它们。 -
@akrun 你的意思是这样的
count.df.long <- bind_rows(count.tables, .id="Sample") count.df.long %>% select(-percent) %>% group_by(Sample) %>% mutate(rn = row_number()) %>%> spread(Sample, count)它显示同样的错误然后>count.df.long %>% select(-percent) %>% group_by(Sample) %>% mutate(rn = row_number()) %>%> spread(Sample, count) Error: unexpected '>' in "count.df.long %>% select(-percent) %>% group_by(Sample) %>% mutate(rn = row_number()) %>%>" -
对于 spread(x, y) 你应该有最多 n_distinct(x) 次 n_distinct(y) 行,因为你使用这些值来填充这些维度的表格。无论如何,如果您需要更具体的答案,我同意一个可重复的示例会有所帮助。
标签: r dataframe dplyr data.table