如何使用 R 中的 googlesheets 包将行名写入电子表格?
How to write rownames into a spreadsheet with the googlesheets package in R?
我想用 googlessheets
包在 Google 电子表格中写一个数据框,但行名没有写在第一列中。
我的数据框如下所示:
> str(stats)
'data.frame': 4 obs. of 2 variables:
$ Offensive: num 194.7 87 62.3 10.6
$ Defensive: num 396.28 51.87 19.55 9.19
> stats
Offensive Defensive
Annualized Return 194.784261 396.278385
Annualized Standard Deviation 87.04125 51.872826
Worst Drawdown 22.26618 9.546208
Annualized Sharpe Ratio (Rf=0%) 1.61126 0.9193734
我按照文档中的建议加载库,创建电子表格和工作表,然后使用 gs_edit_cells
命令写入数据:
> install.packages("googlesheets")
> library("googlesheets")
> suppressPackageStartupMessages(library("dplyr"))
> mySpreadsheet <- gs_new("mySpreadsheet")
> mySpreadsheet <- mySpreadsheet %>% gs_ws_new("Stats")
> mySpreadsheet <- mySpreadsheet %>% gs_edit_cells(ws = "Stats", input = stats, trim = TRUE)
一切顺利,但 googlesheets
没有创建包含行名的列。只创建了两列数据(进攻和防守)。
我试过将数据框转换成矩阵,但还是一样。
知道如何实现吗?
谢谢
gs_edit_cells() 似乎没有行名称参数。如果您只想让行名显示在 sheet 的第一列中,您可以尝试:
stats$Rnames = rownames(stats) ## add column equal to the row names
stats[,c("Rnames","Offensive", "Defensive")] ## re order so names are first
# names(stats) = c("","Offensive", "Defensive") optional if you want the names col to not have a "name"
从这里开始,只需像以前一样将统计数据传递给 googlessheets 包中的函数
我想用 googlessheets
包在 Google 电子表格中写一个数据框,但行名没有写在第一列中。
我的数据框如下所示:
> str(stats)
'data.frame': 4 obs. of 2 variables:
$ Offensive: num 194.7 87 62.3 10.6
$ Defensive: num 396.28 51.87 19.55 9.19
> stats
Offensive Defensive
Annualized Return 194.784261 396.278385
Annualized Standard Deviation 87.04125 51.872826
Worst Drawdown 22.26618 9.546208
Annualized Sharpe Ratio (Rf=0%) 1.61126 0.9193734
我按照文档中的建议加载库,创建电子表格和工作表,然后使用 gs_edit_cells
命令写入数据:
> install.packages("googlesheets")
> library("googlesheets")
> suppressPackageStartupMessages(library("dplyr"))
> mySpreadsheet <- gs_new("mySpreadsheet")
> mySpreadsheet <- mySpreadsheet %>% gs_ws_new("Stats")
> mySpreadsheet <- mySpreadsheet %>% gs_edit_cells(ws = "Stats", input = stats, trim = TRUE)
一切顺利,但 googlesheets
没有创建包含行名的列。只创建了两列数据(进攻和防守)。
我试过将数据框转换成矩阵,但还是一样。
知道如何实现吗?
谢谢
gs_edit_cells() 似乎没有行名称参数。如果您只想让行名显示在 sheet 的第一列中,您可以尝试:
stats$Rnames = rownames(stats) ## add column equal to the row names
stats[,c("Rnames","Offensive", "Defensive")] ## re order so names are first
# names(stats) = c("","Offensive", "Defensive") optional if you want the names col to not have a "name"
从这里开始,只需像以前一样将统计数据传递给 googlessheets 包中的函数