Как читать прямоугольник, окруженный пробелами, используя readxl

У меня есть таблица Excel со следующими данными, которые я пытаюсь прочитать в r:

введите описание изображения здесь

Я хотел бы прочитать в таблице на A3: C6. Однако размеры этих данных могут измениться. Я хочу определить это как данные, начинающиеся с A3 в верхнем левом углу, заканчивающиеся пробелом справа и пробелом внизу.

В настоящее время я использую read_xlsx(skip = 2), но это также читается в строке 8, что мне не нужно.

См. также:  R Как проверить, вызывается ли пользовательская функция внутри определенной функции из определенного пакета
Понравилась статья? Поделиться с друзьями:
IT Шеф
Комментарии: 1
  1. Nick

    Следующий код, кажется, делает то, что требует вопрос. Это основано на том факте, что readxl::read_xlsx возвращает NA для пустых ячеек.

    df1 <- readxl::read_xlsx(xl_filename, skip = 2)
    
    i_col <- which(sapply(df1, function(x) all(is.na(x))))
    i_col <- i_col[which(i_col == min(i_col))]
    i_row <- which(apply(df1, 1, function(x) all(is.na(x))))
    i_row <- i_row[which(i_row == min(i_row))]
    
    df1[seq_len(i_row)[-i_row], seq_len(i_col)[-i_col]]
    
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: