Ваш опыт работы с Matlab/F#/ R для анализа данных и алгоритмов моделирования




(4)

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

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

Я уже некоторое время использую F # для моделирования алгоритмов, прежде чем их кодировать на C ++, а также после этого использовать для проверки результатов кода C ++, а также против реальных данных.

Для моделирования вещей это очень удобно, но для материала типа «data mashup», вытаскивая данные из CSV и других источников, генерируя статистику, графические диаграммы и т. Д., Мой коллега не дразнит меня, нет конца («почему вы кодируя это самостоятельно? Он встроен в MatLab »).

И у меня есть еще один коллега, который клянется R, у которого также есть чартинг «встроенный».

Я знаю, что MatLab, R и F # не являются строго сопоставимыми, поэтому я не прошу «стрельбы по сравнению с результатами». Я просто задавался вопросом, что другие люди используют для таких сценариев до и после анализа, и насколько они счастливы с этим.

(Если кто-то там работает над тем, чтобы обернуть Microsoft Charts во что-то F # -дружелюбно, дайте мне знать, я был бы рад принять участие ...)

(Примечание: ответы на этот вопрос будут субъективными, но, основываясь на опыте, пожалуйста)


Я использую R, потому что, с одной стороны, у него все встроено, а с другой стороны вы все равно можете манипулировать почти всем или начинать с нуля. Тем не менее, R довольно медленный для тяжелых вычислений (хотя я все мои симуляции Монте-Карло в нем).

Я бы сказал, что Matlab лучше всего подходит для доступности математических функций вообще, R лучше всего подходит для ввода / манипуляции / визуализации / анализа данных и т. Д. И C ++ для высокоскоростных подпрограмм. Вы можете, кстати, легко интегрировать код C ++ (или C, fortran, ...) в R. Почему бы вам не читать и манипулировать входными данными в R, применять модели на C ++ и анализировать / визуализировать выходные данные в R?


Я всегда прототип своих моделей в MATLAB. Если мой прототип достаточно быстр, я рефакторинг, и все сделано. Если нет, я возвращаюсь и реализую некоторые функции в C, которые вызывается MATLAB. Это требует знания языка низкого уровня, который, я думаю, всегда будет иметь место, если вы делаете что-то технически сложное.

Я заинтригован этим ароматом Лиспа, если он когда-либо сойдет с земли.


Я работал с Matlab и python / pylab для этих целей. Что эти инструменты имеют «встроенный», это среда программирования, оболочка и инструменты gui, предназначенные для быстрого поиска данных из разных источников.

В нескольких командах вы можете перейти от создания файла csv к интерактивным графикам на экране, а затем к экспорту изображения практически в любом формате. Потребуется минут или два, чтобы перейти от данных к визуализации, как только вы их повесили. Я бы предположил, что это необычно в мире C ++ (хотя я видел некоторых профессоров с довольно впечатляющими рабочими потоками).

Я пробовал R, но я не могу сказать много полезного об этом. Кажется, он предлагает один и тот же набор функций, но может оказаться хлопотным для поддержки Google.

Если вы тратите более двух минут на получение данных на сюжет с использованием вашего текущего метода, то определенно стоит изучить одну из этих сред. Лучший выбор зависит от ваших коллег, вашей рабочей среды, опыта и вашего бюджета.





f#