如何使用“readxl”包从.xlsx文件中选择两个特定列?
我有一个包含28列的.xlsx文件。其中,我只想选择第3列Salesperson和第28列Customer ID。 我试着遵循两个代码,但它们似乎都不起作用。请告诉我我做错了什么:如何使用“readxl”包从.xlsx文件中选择两个特定列?,r,readxl,R,Readxl,我有一个包含28列的.xlsx文件。其中,我只想选择第3列Salesperson和第28列Customer ID。 我试着遵循两个代码,但它们似乎都不起作用。请告诉我我做错了什么: read_xlsx("Active List till 7 Feb .xlsx",sheet = "Raw data",col_names = c("Salesperson","Customer ID")) 或 在使用第一个代码时,我遇到了以下错误 Error: Sheet 4 has 28 columns (28
read_xlsx("Active List till 7 Feb .xlsx",sheet = "Raw data",col_names = c("Salesperson","Customer ID"))
或
在使用第一个代码时,我遇到了以下错误
Error: Sheet 4 has 28 columns (28 unskipped), but `col_names` has length 2
在第二段代码中,我得到了从3到28的所有列,而不仅仅是3和28
我知道以后可以使用select选择特定的列,但我想知道如何将其直接指定到read_xlsx函数中。另外,如果有更好的方法来实现这一点,请告诉我
谢谢 您可以使用以下代码进行此操作
Sys.setenv(JAVA_HOME="C:\\Program Files\\Java\\jdk1.8.0_201")
library(xlsx)
read.xlsx("Active List till 7 Feb .xlsx", sheetName = "Raw data", colIndex = c(3,28))
或
使用openxlsx包的解决方案
这回答了你的问题吗?我试图找到一种方法,如何使用readxl软件包中的read_xlsx函数来实现这一点。我担心readxl软件包可能实现这一点。使用readxl是否绝对必要?不,实际上我想知道我在代码中犯了什么错误。即使使用读取后选择,我也能完成任务。感谢您的帮助,我无法从它的帮助中获得什么。
Sys.setenv(JAVA_HOME="C:\\Program Files\\Java\\jdk1.8.0_201")
library(xlsx)
read.xlsx("Active List till 7 Feb .xlsx", sheetName = "Raw data", colIndex = c(3,28))
library(openxlsx)
read.xlsx("Active List till 7 Feb .xlsx", sheet = "Raw data", cols = c(3,28))