Инструмент для ad hoc анализа данных, математики и всякого такого
От: andyag  
Дата: 24.05.15 09:03
Оценка:
Редко, но регулярно возникают одноразовые задачи, связанные с примитивным анализом данных и математикой. Несколько примеров:

1. Есть логи веб-сервера за несколько лет, нужно нарисовать график "количество запросов от времени" (на входе — логи, на выходе — картинка)
2. Есть набор 3D точек, нужно вычислить центр масс и повернуть эти точки относительно него (на входе — CSV, на выходе CSV)
3. Нужно сгенерировать тысячу реализаций случайного процесса, в каждой реализации по миллиону сэмплов (на входе — ничего, на выходе — CSV)

Сейчас для решения этих задач я использую буквально что под руку подвернётся — от Java/JavaScript до Excel/LibreOffice Calc. Т.к. в последнее время такие задачи возникают всё чаще, задумался как можно было бы перестать велосипедить и делать это всё проще и быстрее. Посоветуйте пожалуйста тул, удовлетворяющий требованиям:

1. Бесплатный
2. Под Linux/Windows
3. Устанавливается за 1 раз — без всяких там "а теперь нужно прописать пути в переменных окружения" и "а ещё нужно отдельно установить вот эту нативную библиотеку"
4. Не "наш самый лучший убийца всех аналогов", а зрелый, с большим комьюнити
5. "На вырост" — если я захочу однажды рисовать графы, оно должно это уметь. Если я захочу однажды построить поверхность по облаку точек и сохранить набор треугольников, должно уметь. Ну и т.д.
6. Более клавиатурный, чем мышкокликательный.
7. С возможностью писать и сохранять скрипты, которые можно будет потом запускать из консоли для разных входных данных и получать результаты. Без запуска IDE.

Нагуглились SciPy и R, смотрю на них.
С Python есть небольшой опыт. Подкупает, что при необходимости можно будет легко накидать веб-интерфейс для решалки конкретной задачи и поделиться с коллегами.
А вот R кажется каким-то сильно экзотичным.

Расскажите пожалуйста какие плюсы-минусы есть у каждого? Или может быть есть более другие варианты?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.