在R中导入Excel表

在R中导入Excel表,r,excel,openxlsx,R,Excel,Openxlsx,有没有办法将命名的Excel表作为data.frame导入R 我通常在一个工作表上有几个命名的Excel表,我希望将其作为data.frames导入,而不依赖Excel表位置的静态行和列引用 我曾尝试设置namedRegion,这是几个Excel导入函数的可用参数,但对于命名的Excel表,这似乎不起作用。我目前正在使用openxlxs包,它有一个函数getTables(),该函数从一个工作表中创建一个带有Excel表名的变量,但不是表中的数据。您可以检查下一个包: library(xlsx)

有没有办法将命名的Excel表作为data.frame导入R

我通常在一个工作表上有几个命名的Excel表,我希望将其作为data.frames导入,而不依赖Excel表位置的静态行和列引用


我曾尝试设置
namedRegion
,这是几个Excel导入函数的可用参数,但对于命名的Excel表,这似乎不起作用。我目前正在使用openxlxs包,它有一个函数
getTables()
,该函数从一个工作表中创建一个带有Excel表名的变量,但不是表中的数据。

您可以检查下一个包:

library(xlsx)
Data <- read.xlsx('YourFile.xlsx',sheet=1)

library(readxl)
Data <- read_excel('YourFile.xlsx',sheet=1)
库(xlsx)

数据您可以查看下一个包:

library(xlsx)
Data <- read.xlsx('YourFile.xlsx',sheet=1)

library(readxl)
Data <- read_excel('YourFile.xlsx',sheet=1)
库(xlsx)

数据我使用包
openxlsx
中的
read.xlsx
。例如:

library(openxlsx)
fileA <- paste0(some.directory,'excel.file.xlsx')
A <-  read.xlsx(fileA, startRow = 3)
库(openxlsx)

fileA我使用包
openxlsx
中的
read.xlsx
。例如:

library(openxlsx)
fileA <- paste0(some.directory,'excel.file.xlsx')
A <-  read.xlsx(fileA, startRow = 3)
库(openxlsx)

fileA获取命名表需要一点工作

首先,您需要加载工作簿

library(openxlsx)

wb <- loadWorkbook("name_excel_file.xlsx")
现在,使用
cols
rows
参数重新读取Excel文件

# finally read it
my_df <- read.xlsx(xlsxFile = "name_excel_file.xlsx",
                   sheet = 1,
                   cols = table_range_col_num[1]:table_range_col_num[2],
                   rows = table_range_row_num[1]:table_range_row_num[2])
#终于读到了

my_df获取命名表是一项小小的工作

首先,您需要加载工作簿

library(openxlsx)

wb <- loadWorkbook("name_excel_file.xlsx")
现在,使用
cols
rows
参数重新读取Excel文件

# finally read it
my_df <- read.xlsx(xlsxFile = "name_excel_file.xlsx",
                   sheet = 1,
                   cols = table_range_col_num[1]:table_range_col_num[2],
                   rows = table_range_row_num[1]:table_range_row_num[2])
#终于读到了

我的_df此链接可能对您有用

要获取表名,可以使用函数

getTables(wb,sheet=1,simplify=T)
其中:

  • wb-您的工作簿
  • 图纸-图纸名称,也可以是编号
  • simplify=TRUE(默认)结果简化为向量

这是代码(不是我的,是从上面的主题复制的,只是稍微修改了一下)

require(XLConnect)
sampleFile=“C:/Users/your.name/Documents/test.xlsx”
wb=加载工作簿(样本文件)

myTable此链接可能对您有用

要获取表名,可以使用函数

getTables(wb,sheet=1,simplify=T)
其中:

  • wb-您的工作簿
  • 图纸-图纸名称,也可以是编号
  • simplify=TRUE(默认)结果简化为向量

这是代码(不是我的,是从上面的主题复制的,只是稍微修改了一下)

require(XLConnect)
sampleFile=“C:/Users/your.name/Documents/test.xlsx”
wb=加载工作簿(样本文件)

我的桌子这就是我现在正在做的。但这并不是解决Excel中命名表的问题。这就是我现在正在做的。但这并不能解决Excel中命名表的问题。谢谢,这确实解决了我的问题,尽管XLConnect软件包依赖Java,但我们不允许在公司电脑上安装Java。:/!是的,所有这些“不允许安装”也与我的工作有关:)但是,也许他们可以为您提供可以使用java的远程PC。谢谢,这确实解决了我的问题,尽管XLConnect软件包依赖java,但我们不允许在公司PC上安装java。:/!是的,所有这些“不允许安装”也与我的工作有关:)但是,也许他们可以为您提供远程PC,在那里可以使用java。谢谢,我会的。试试这个。:)谢谢,我会的。试试这个。:)