Size: a a a

R (язык программирования)

2020 September 27

JS

Jury Sergeev in R (язык программирования)
Andrey
мне надо было всего-то выбрать несколько столбцов, которые затем уже нормально  помещаются в память
Имхо, такое пентахой надёжнее, она все делает чанками, потому память не жрёт, параллелизация из коробки
источник

A

Andrey in R (язык программирования)
Jury Sergeev
Имхо, такое пентахой надёжнее, она все делает чанками, потому память не жрёт, параллелизация из коробки
Попробую и так при случае
источник

JS

Jury Sergeev in R (язык программирования)
Andrey
Попробую и так при случае
Если что, обращайтесь, подскажу
источник

A

Andrey in R (язык программирования)
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Господа и дамы биостатистики/медстатистики, можете посоветовать годные курсы по теме? Хочу собрать знания воедино + получить бумажку.
источник

Ю

Юрий 🐙💻🤖📊📈🚬... in R (язык программирования)
Евгений Томилов
Господа и дамы биостатистики/медстатистики, можете посоветовать годные курсы по теме? Хочу собрать знания воедино + получить бумажку.
Курсера, степик...
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Юрий 🐙💻🤖📊📈🚬
Курсера, степик...
Да это-то ясное дело, я думал, может, есть какие-то годные курсы в России, кроме Степиковских.
источник

Ю

Юрий 🐙💻🤖📊📈🚬... in R (язык программирования)
Евгений Томилов
Да это-то ясное дело, я думал, может, есть какие-то годные курсы в России, кроме Степиковских.
Это шутка? В России ничего нету
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Юрий 🐙💻🤖📊📈🚬
Это шутка? В России ничего нету
*живёт в России посреди пустоты*
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Эх.
источник

БА

Байкулов Антон... in R (язык программирования)
Господа, а никто случаем Grafana-server для Google Big Query не юзал?
источник

АК

Артём Клевцов... in R (язык программирования)
Andrey
Вдруг кому интересно, небольшой фидбек. Тестировал на винде.
1) Файл весом 100 Гб (18kk x 29) на ПК с 32 Гб ОЗУ обработать таким образом можно.
2) По времени на среднем по скорости SATA SSD формирование disk.frame-а занимает порядка 1.5 ч. ОЗУ расходуется вся, но ничего не виснет и не падает. Это все с backend = "data.table" и chunk_reader = "bigreadr". Такой вариант вроде бы должен быть самым быстрым, дополнительно ускориться теоретически можно путем использования более скоростных SSD, разместив исходник и итоговую папку на разных дисках.
3) Чтобы избежать создания временных файлов на системном диске, нужно задать переменную TMPDIR (например, в .Renviron).
4) Запас места должен быть не 2-х, как можно было ожидать, а 3-х кратным, плюс место под исходный файл. В моем случае SSD на полтерабайта был забит почти полностью: 100 Гб исходник, около 90 Гб итоговая папка c .fst-файлами, и примерно 200 Гб во время работы ушло под временные файлы. Из этих 200 Гб во временной папке было видно половину, и еще 100 Гб болтались непонятно где, видимо в виде скрытых файлов каких-то.
5) Можно пожертвовать скоростью и избежать создания (всех?) временных файлов при помощи backend = "LaF".
Вариант с Apache Drill.
Запуск контейнера:
docker run --rm -ti -p 8047:8047 -v /path/to/data:/data -v /path/to/data/out:/tmp/data apache:drill
Внутри:
CREATE TABLE dfs.tmp.`/data/test.parquet` AS SELECT CAST(a AS BIGINT), CAST(b AS DOUBLE) FROM TABLE(dfs.`/data/test.csv`(type => 'text', fieldDelimiter=>',', extractHeader => true));
Память не жрёт особо. Скорость надо проверять.
источник

АК

Артём Клевцов... in R (язык программирования)
Артём Клевцов
Вариант с Apache Drill.
Запуск контейнера:
docker run --rm -ti -p 8047:8047 -v /path/to/data:/data -v /path/to/data/out:/tmp/data apache:drill
Внутри:
CREATE TABLE dfs.tmp.`/data/test.parquet` AS SELECT CAST(a AS BIGINT), CAST(b AS DOUBLE) FROM TABLE(dfs.`/data/test.csv`(type => 'text', fieldDelimiter=>',', extractHeader => true));
Память не жрёт особо. Скорость надо проверять.
2 столбца, CSV 40 гигов:
> head test.csv 
a,b
415,0.356015454977751
463,0.367446548072621
179,0.090587628306821
526,0.36187946703285
195,0.873147209873423
938,0.450912918429822
818,0.357464616652578
118,0.321751844137907


apache drill> CREATE TABLE dfs.tmp.`/data/test.parquet` AS SELECT CAST(a AS BIGINT), CAST(b AS DOUBLE) FROM TABLE(dfs.`/data/test.csv`(type => 'text', fieldDelimiter=>',', extractHeader => true));
+----------+---------------------------+
| Fragment | Number of records written |
+----------+---------------------------+
| 0_0      | 2000000000                |
+----------+---------------------------+
1 row selected (1296.647 seconds)
источник

RB

Roman Bednarskiy in R (язык программирования)
гайс, привет.
пишу много на питоне и делаю еще много чего, но с R не работал.

какие либы в R являются братьями и сестрами pandas, numpy, seaborn, nltk, scikit learn, scipy?
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Roman Bednarskiy
гайс, привет.
пишу много на питоне и делаю еще много чего, но с R не работал.

какие либы в R являются братьями и сестрами pandas, numpy, seaborn, nltk, scikit learn, scipy?
dplyr/data.table, base, ggplot, tidytext, mlr3/caret, base
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Насчёт tidytext не на 100% уверен.
источник

RB

Roman Bednarskiy in R (язык программирования)
Евгений Томилов
dplyr/data.table, base, ggplot, tidytext, mlr3/caret, base
воо, супер.
спасибо тебе ❤️
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Roman Bednarskiy
воо, супер.
спасибо тебе ❤️
:3
источник

A

Andrey in R (язык программирования)
Артём Клевцов
Вариант с Apache Drill.
Запуск контейнера:
docker run --rm -ti -p 8047:8047 -v /path/to/data:/data -v /path/to/data/out:/tmp/data apache:drill
Внутри:
CREATE TABLE dfs.tmp.`/data/test.parquet` AS SELECT CAST(a AS BIGINT), CAST(b AS DOUBLE) FROM TABLE(dfs.`/data/test.csv`(type => 'text', fieldDelimiter=>',', extractHeader => true));
Память не жрёт особо. Скорость надо проверять.
спасибо; есть один нюанс с моими данными. Там одно поле имеет вид {100500, 1234, 999} и разделитель между полями тоже запятая. Нормально такие вещи проходят?
источник

A

Andrey in R (язык программирования)
Roman Bednarskiy
гайс, привет.
пишу много на питоне и делаю еще много чего, но с R не работал.

какие либы в R являются братьями и сестрами pandas, numpy, seaborn, nltk, scikit learn, scipy?
для pandas братом, точнее прародителем, является base R. dplyr/data.table ушли далеко вперед, причем настолько, что даже порт data.table сейчас пилят на питоне. data.table и обсуждавшийся выше disk.frame ближе к питоновскому dask
источник