首页 > 解决方案 > 如何从googlespread表R中删除行

问题描述

我有一个数据框,我正在使用带有“googlesheets”库的 R 将其导出到 googlespread 表。

DF

Col1         Col2        Col3 
ABC          DEF         Test
ABC          DEF         Pending
ABC          DEF         Final
ABC          DEF         Final
ABC          DEF         Reject
ABC          DEF         Test

我正在使用下面提到的代码来导出数据数据框(其中Col3列由用户手动填充)。

as<-gs_title("Test")
gs_upload("data.csv", sheet_title = "Test1", overwrite = TRUE)

现在,我只想删除那些Col3值为Finalor的行Reject

标签: rgoogle-apps-scriptgoogle-sheetsdplyr

解决方案


试试这个:

function deleteSelectedRows() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Test');
  var rg=sh.getDataRange();
  var vA=rg.getValues();
  var d=0;
  for(var i=1;i<vA.length;i++) {
    if(vA[i][2].toString().toLowerCase()=="final" || vA[i][2].toString().toLowerCase()=="reject")  {
      sh.deleteRow(i-d+1)
      d++;
    }
  }
}

推荐阅读