首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在R中将文本行添加到dataframe中的列名上方并另存为txt文件

如何在R中将文本行添加到dataframe中的列名上方并另存为txt文件
EN

Stack Overflow用户
提问于 2019-05-27 19:49:38
回答 1查看 304关注 0票数 1

我使用R从Adobe Analytics中提取数据。dataframe具有列名,我希望在列名上方添加以下行,并将文件保存为具有先前日期的txt : filename_yyyy-mm-dd。

我在列名上面添加以下内容时遇到问题:

产品成本模板文件(用户: 400024375 ds_id: 2)

产品COGS (e102)原价(e103)销售价格(e104)采购ID

以下是列名:日期产品事件102事件103事件104 transactionID

下面是最终文件应该是这样的:

EN

回答 1

Stack Overflow用户

发布于 2019-05-28 01:59:26

这里有一种方法(假设您的数据帧名为your_data):

代码语言:javascript
复制
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行。

或者,您可以先编写第一行,然后追加表格:

代码语言:javascript
复制
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部件。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56325511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档