Различие между массивом байтов и MemoryStream

Вот пример того, как преобразовать число (1:4) в коэффициент («зима», «весна», «лето», «осень»). Ключ заключается в том, чтобы использовать функцию factor и соответственно установить levels и labels.

# Create example data frame
bikeshare <- data.frame(season = 1:4)

bikeshare
#   season
# 1      1
# 2      2
# 3      3
# 4      4

library(dplyr)

bikeshare2 <- bikeshare %>%
  mutate(season = factor(as.character(season), 
                         levels = c(1, 2, 3, 4),
                         labels = c("winter", "spring", "summer", "fall")))
bikeshare2
#   season
# 1 winter
# 2 spring
# 3 summer
# 4   fall
18
задан Keith Sirmons 19 August 2008 в 20:57
поделиться

2 ответа

byte[] или MemoryStream оба потребует загрузки в память всего файла. MemoryStream действительно обертка вокруг базового массива байтов. Лучший подход должен иметь два FileStream (один для входа и один для вывода). Читайте из входного потока, ища шаблон, используемый, чтобы указать, что файл должен быть разделен при записи в файл текущей производительности.

можно хотеть рассмотреть обертывание входных и выходных файлов в BinaryReader и BinaryWriter соответственно, если они увеличивают стоимость сценария.

25
ответ дан 30 November 2019 в 07:44
поделиться

MemoryStream является в основном массивом байтов с потоковым интерфейсом, например, последовательным чтением/записью и понятием текущей позиции.

8
ответ дан 30 November 2019 в 07:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: