Вот один из способов сделать это (при условии, что ваш фрейм данных называется your_data
):
line1 = '# Product Cost template file (user: 400024375 ds_id: 2)'
line2 = '# Products COGS (e102) Original Price (e103) Sale Price (e104) Purchase ID'
column_names = c( paste( line1, line2, 'Date', sep = '\n'), 'Product', 'Event 102', 'Event 103', 'Event 104', 'transactionID')
output = rbind( column_names, your_data)
write.table( output, "filename_yyyy-mm-dd.txt", sep="\t", quote = F, row.names = F, col.names = F )
Обратите внимание, что это предполагает, что у вас еще нет имен столбцов в данных, которые, как вам кажется, подразумеваются. Если у вас уже есть имена столбцов в первой строке, вы просто пишете output[1, 1] = paste( line1, line2, output[1, 1], sep = '\n')
вместо строки rbind
.
В качестве альтернативы вы можете сначала написать первые строки, а затем добавить таблицу:
line1 = '# Product Cost template file (user: 400024375 ds_id: 2)'
line2 = '# Products COGS (e102) Original Price (e103) Sale Price (e104) Purchase ID'
column_names = c( 'Date', 'Product', 'Event 102', 'Event 103', 'Event 104', 'transactionID')
names(your_data) = column_names
file_name = "filename_yyyy-mm-dd.txt"
cat( line1, line2, file = file_name, sep="\n")
write.table( your_data, file_name, sep="\t", quote = F, row.names = F, col.names = T, append = T )
(Опять же, если у вас уже есть имена столбцов, просто удалите column_names
части.)