У меня есть некоторые таблицы данных в таблицах Excel, которые я использую в R. Некоторые таблицы хранят числа в виде текста, то есть числовые значения хранятся в виде символов.
Чтобы уточнить, проблема не в форматировании, а в самих числах. Excel (и R) видит такие цифры как символы, такие как буквы, а не цифры.
Поскольку форматирование кажется проблемой, функция addStyle
в openxlsx
не работает для меня.
После некоторого поиска в Google я решил попытаться написать цикл for
, который будет проверять каждое значение отдельно. Я написал вложенный цикл for
, который проверяет каждое значение и перезаписывает его, если оно является числом (код ниже). Кажется, это работает логически, но значения не перезаписываются, т.е. значения, которые были сохранены в виде текста, все еще там.
library(readxl)
library(openxlsx)
wb<-loadWorkbook(choose.files())
data0<-as.data.frame(read_excel(choose.files(),sheet=1,range = "B1:E1131"))
data<-data0
for(i in 1:ncol(data)){
for(j in 1:nrow(data)){
if(is.numeric(as.numeric(data[j,i]))&&!is.na(as.numeric(data[j,i]))){
data[j,i]<-as.numeric(data[j,i])
}
}
}
Желаемый результат:
Я хотел бы изменить данные в столбце «Расходы» (на рисунке ниже) на данные в столбце справа через R.
