在 xlsx r 包中将基因名称格式化为文本
formatting gene names as text in xlsx r package
我正在尝试以正确的方式格式化 excel 文件中的列。首先,恐怕 Excel 将一些奇怪的基因名称图片为 dates 这在科学中经常发生。所以通常情况下,当从 txt 文件导入数据到 excel 时,我 select 基因名称列并将细胞类型从 general 更改为 text 处于保存状态。
当我现在使用 xlsx
创建我的 excel sheet 时,恐怕会发生这种情况。
目前,我试图重现此行为,但所有列的格式都设置为 general,但我希望将特定列强制为文本。
这有可能吗?
df <- data.frame(a=c(1,2),
b=c('SEPT2', 'MARCH1'),
c=c('1,2', '1,4'),
d=c('1.2', '1.4'),
e=c('2-SEP', '1-MARCH'),
f=c('APR-1', 'DEC-1'))
wb <- xlsx::createWorkbook()
sheet1 <- xlsx::createSheet(wb, sheetName='test')
xlsx::addDataFrame(df, sheet1,
col.names=TRUE, row.names=FALSE)
xlsx::saveWorkbook(wb, 'test.xlsx')
我希望将 b、e 和 f 列格式化为文本。
编辑
因为我在评论中询问如何找到更多格式值,例如科学记数法,我找到了这个 here。
text_format = CellStyle(wb, dataFormat=DataFormat("@"))
scientific_format <- CellStyle(wb, dataFormat=DataFormat('0.00E+00'))
您只需创建格式规范并使用 colStyle
参数将其添加到 addDataFrame
。
wb <- xlsx::createWorkbook()
sheet1 <- xlsx::createSheet(wb, sheetName='test')
## Create the format specification
TextFormat = CellStyle(wb, dataFormat=DataFormat("@"))
FormatList = list('2'=TextFormat, '5'=TextFormat,'6' = TextFormat)
xlsx::addDataFrame(df, sheet1, col.names=TRUE, colStyle=FormatList,
row.names=FALSE)
xlsx::saveWorkbook(wb, 'test.xlsx')
注意:“@”为文本格式代码。
我正在尝试以正确的方式格式化 excel 文件中的列。首先,恐怕 Excel 将一些奇怪的基因名称图片为 dates 这在科学中经常发生。所以通常情况下,当从 txt 文件导入数据到 excel 时,我 select 基因名称列并将细胞类型从 general 更改为 text 处于保存状态。
当我现在使用 xlsx
创建我的 excel sheet 时,恐怕会发生这种情况。
目前,我试图重现此行为,但所有列的格式都设置为 general,但我希望将特定列强制为文本。
这有可能吗?
df <- data.frame(a=c(1,2),
b=c('SEPT2', 'MARCH1'),
c=c('1,2', '1,4'),
d=c('1.2', '1.4'),
e=c('2-SEP', '1-MARCH'),
f=c('APR-1', 'DEC-1'))
wb <- xlsx::createWorkbook()
sheet1 <- xlsx::createSheet(wb, sheetName='test')
xlsx::addDataFrame(df, sheet1,
col.names=TRUE, row.names=FALSE)
xlsx::saveWorkbook(wb, 'test.xlsx')
我希望将 b、e 和 f 列格式化为文本。
编辑
因为我在评论中询问如何找到更多格式值,例如科学记数法,我找到了这个 here。
text_format = CellStyle(wb, dataFormat=DataFormat("@"))
scientific_format <- CellStyle(wb, dataFormat=DataFormat('0.00E+00'))
您只需创建格式规范并使用 colStyle
参数将其添加到 addDataFrame
。
wb <- xlsx::createWorkbook()
sheet1 <- xlsx::createSheet(wb, sheetName='test')
## Create the format specification
TextFormat = CellStyle(wb, dataFormat=DataFormat("@"))
FormatList = list('2'=TextFormat, '5'=TextFormat,'6' = TextFormat)
xlsx::addDataFrame(df, sheet1, col.names=TRUE, colStyle=FormatList,
row.names=FALSE)
xlsx::saveWorkbook(wb, 'test.xlsx')
注意:“@”为文本格式代码。