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)
Другие вопросы по тегам