此低级函数返回 tibble 中的单元格数据,每个单元格一行。该 tibble 具有整数变量 row
和 col
(指的是 Google Sheet 的位置)、A1 样式引用 loc
和 cell
列表列。旗舰函数 read_sheet()
,又名 range_read()
,是大多数用户正在寻找的,而不是 range_read_cells()
。 read_sheet()
本质上是 range_read_cells()
(此函数),然后是 spread_sheet()
,它负责重塑和列键入。但如果您确实想要来自 API 的原始单元格数据,range_read_cells()
适合您!
用法
range_read_cells(
ss,
sheet = NULL,
range = NULL,
skip = 0,
n_max = Inf,
cell_data = c("default", "full"),
discard_empty = TRUE
)
参数
- ss
-
识别 Google 表格的内容:
-
其文件 ID 作为字符串或
drive_id
-
我们可以从中恢复 id 的 URL
-
one-row
dribble
,这就是 googledrive 表示云端硬盘文件的方式 -
googlesheets4_spreadsheet
的实例,这就是gs4_get()
返回的内容
通过
as_sheets_id()
处理。 -
- sheet
-
要阅读的表,在 "worksheet" 或 "tab" 的意义上。您可以通过名称(使用字符串)或位置(使用数字)来标识工作表。如果通过
range
指定工作表,则忽略。如果两个参数都没有指定工作表,则默认为第一个可见工作表。 - range
-
要读取的单元格范围。如果是
NULL
,则读取所有非空单元格。否则,请按照 Sheets A1 notation 中的说明指定range
或使用 cell-specification 中记录的帮助程序。 Sheets 使用相当标准的电子表格范围表示法,尽管与 Excel 略有不同。有效范围示例:"Sheet1!A1:B2"
、"Sheet1!A:A"
、"Sheet1!1:2"
、"Sheet1!A5:A"
、"A1:B2"
、"Sheet1"
。严格解释,即使范围强制包含前导、尾随或嵌入的空行或列。优先于skip
、n_max
和sheet
。注意range
可以是命名范围,如"sales_data"
,没有任何单元格引用。 - skip
-
在读取任何内容(无论是列名还是数据)之前要跳过的最小行数。前导空行会自动跳过,因此这是一个下限。如果给出
range
,则忽略。 - n_max
-
要解析为返回的 tibble 的最大数据行数。尾随空行将被自动跳过,因此这是结果中行数的上限。如果给出
range
,则忽略。n_max
在读取所有非空单元格后在本地强制执行,因此,如果速度是一个问题,最好使用range
。 - cell_data
-
每个单元格要获取多少详细信息。
"default"
检索 googlesheets4 猜测或强加单元格和列类型时实际使用的字段。"full"
检索中的所有字段CellData
架构。主要差异与单元格格式有关。 - discard_empty
-
是否丢弃没有数据的单元格。从字面上看,我们检查
effectiveValue
,这是其中的字段之一CellData
架构.
例子
range_read_cells(gs4_example("deaths"), range = "arts_data")
#> ✔ Reading from deaths.
#> ✔ Range arts_data.
#> # A tibble: 66 × 4
#> row col loc cell
#> <int> <int> <chr> <list>
#> 1 5 1 A5 <CELL_TEX>
#> 2 5 2 B5 <CELL_TEX>
#> 3 5 3 C5 <CELL_TEX>
#> 4 5 4 D5 <CELL_TEX>
#> 5 5 5 E5 <CELL_TEX>
#> 6 5 6 F5 <CELL_TEX>
#> 7 6 1 A6 <CELL_TEX>
#> 8 6 2 B6 <CELL_TEX>
#> 9 6 3 C6 <CELL_NUM>
#> 10 6 4 D6 <CELL_LOG>
#> # ℹ 56 more rows
# if you want detailed and exhaustive cell data, do this
range_read_cells(
gs4_example("formulas-and-formats"),
cell_data = "full",
discard_empty = FALSE
)
#> ✔ Reading from formulas-and-formats.
#> ✔ Range Sheet1.
#> # A tibble: 678 × 4
#> row col loc cell
#> <int> <int> <chr> <list>
#> 1 1 1 A1 <CELL_TEX>
#> 2 1 2 B1 <CELL_TEX>
#> 3 1 3 C1 <CELL_TEX>
#> 4 1 4 D1 <CELL_TEX>
#> 5 1 5 E1 <CELL_TEX>
#> 6 1 6 F1 <CELL_TEX>
#> 7 2 1 A2 <CELL_NUM>
#> 8 2 2 B2 <CELL_NUM>
#> 9 2 3 C2 <CELL_NUM>
#> 10 2 4 D2 <CELL_TEX>
#> # ℹ 668 more rows
相关用法
- R googlesheets4 range_read 将工作表读入 DataFrame 中
- R googlesheets4 range_autofit 自动调整列或行以适应数据
- R googlesheets4 range_speedread 将工作表读取为 CSV
- R googlesheets4 range_delete 删除单元格
- R googlesheets4 range_flood 淹没或清除一系列单元格
- R googlesheets4 range_write (覆盖)将新数据写入范围
- R googlesheets4 request_generate 生成 Google Sheets API 请求
- R googlesheets4 sheet_rename 重命名(工作)表
- R googlesheets4 sheet_delete 删除一张或多张(工作)表
- R googlesheets4 gs4_token 生成配置的令牌
- R googlesheets4 gs4_formula Google 表格公式类
- R googlesheets4 gs4_random 生成随机工作表名称
- R googlesheets4 gs4_user 获取当前用户的信息
- R googlesheets4 spread_sheet 将单元格 DataFrame 展开为电子表格形状
- R googlesheets4 sheet_properties 获取有关(工作)表的数据
- R googlesheets4 sheets_id Sheets_id 类
- R googlesheets4 gs4_auth_configure 编辑和查看身份验证配置
- R googlesheets4 gs4_fodder 创建有用的电子表格填充程序
- R googlesheets4 sheet_append 将行附加到工作表
- R googlesheets4 gs4_endpoints 列出工作表端点
- R googlesheets4 gs4_auth 授权 googlesheets4
- R googlesheets4 gs4_find 查找 Google 表格
- R googlesheets4 sheet_write (覆盖)将新数据写入工作表
- R googlesheets4 gs4_examples 示例表
- R googlesheets4 googlesheets4-configuration 谷歌表4配置
注:本文由纯净天空筛选整理自Jennifer Bryan等大神的英文原创作品 Read cells from a Sheet。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。