write.table в R создает TXT-файлы, которые затем неправильно читаются
Поэтому я работаю в MethylKit, в котором есть функция, которая требует использования текстовых файлов.
Мои исходные файлы моих данных работают отлично, но из-за некоторых других проблем я устраняю неполадки, создавая подмножества моих исходных файлов.
Для этого я использую:
write.table(head(Sample_101, n=100),"shorty_101.txt", col.names = FALSE,
sep = "\t", row.names = TRUE)
Сначала я столкнулся с вопросом о смещении имен столбцов в R, и приведенная выше строка хорошо подходит для решения этой проблемы. Тем не менее, когда я пытаюсь поместить текстовые файлы в file.listshorty
объект, который затем будет использоваться для methRead
функция, я получаю это:
file.listshorty <- list("shorty_101.txt","shorty_102.txt", "shorty_103.txt",
"shorty_104.txt", "shorty_105.txt", "shorty_107.txt")
myobjS = methRead(file.listshorty, sample.id=list("Sample_101_GDM",
"Sample_102_GDM", "Sample_103_GDM", "Sample_104_nonGDM",
"Sample_105_nonGDM", "Sample_107_nonGDM"), assembly = "hg19",
treatment=c(1,1,1,0,0,0), context="CpG", dbtype = "tabix", pipeline = "amp",
header= TRUE, skip = 0, sep = "\t", resolution = "base", dbdir = getwd(),
mincov = 10)
Error in data[, 5] * data[, 6] : non-numeric argument to binary operator
Однако, когда я открываю эти txt-файлы, созданные R, удаляю посторонние вещи, добавленные в него, а затем читаю их, это работает
Чтобы уточнить -> Удален столбец нумерации строк и строка, которая именует столбцы V1, V2, V3...V7.
V1 V2 V3 V4 V5 V6 V7
1
2
3
4
5
Я также попытался сделать:
write.table(head(Sample_101, n=100), "shorty_101.txt", col.names = FALSE,
sep = "\t", row.names = FALSE)
Это дает мне то же сообщение об ошибке. Я предполагаю, что это потому, что первая строка должна быть обозначена как заголовок, но не уверен, как это сделать, используя функцию списка или если есть другой обходной путь.
Любая помощь высоко ценится!
Спасибо!
1 ответ
Догадаться! Вы должны удалить цитаты, созданные в текстовом файле, добавив аргумент quote = FALSE
в write.table
функция.
write.table(head(Sample_101, n=100), "shorty_101.txt", col.names = FALSE, sep
= "\t", row.names = FALSE, quote = FALSE)