Бібліотека Java з відкритим кодом для статистики на рівні, запропонованому випускним курсом статистики


15

Я беру аспірантуру з прикладної статистики, яка використовує наступний підручник (щоб ви відчули рівень матеріалу, який охоплюється): Статистичні поняття та методи Г.К. Бхаттачарія та Р.А. Джонсон.

Професор вимагає від нас використовувати домашні завдання SAS.

Моє запитання таке: чи існує бібліотека Java (я), яка може використовуватися замість SAS для проблем, які зазвичай спостерігаються в таких класах.

Наразі я намагаюся зробити з Apache Math Commons, і хоч мене вражає бібліотека (це простота використання та зрозумілість), здається, не вистачає навіть простих речей, таких як вміння малювати гістограми (думаючи поєднувати її з бібліотекою графіків) ).

Я подивився на Кольта, але мій початковий інтерес досить швидко згас.

Буду вдячний за будь-яку інформацію - і я переглянув подібні запитання щодо Stackoverflow, але не знайшов нічого переконливого.

ПРИМІТКА. Мені відомі бібліотеки R, SciPy, Octave та java, які здійснюють дзвінки до них. Я шукаю нативну бібліотеку Java або набір бібліотек, які можуть надавати функції, які я шукаю.

ПРИМІТКА. Теми, що охоплюються у такому класі, зазвичай включають: одноразові та дворазові випробування та довірчі інтервали для засобів та медіанів, описову статистику, тести на придатність, одно- та двостороння ANOVA, одночасне висновок, тестування дисперсії, регресійний аналіз та категоричний аналіз даних.


2
Ви розглядали R ?
— RioRaider

Привіт, дякую за замітку, я шукаю бібліотеку, яка майже повністю знаходиться на Java. Тож я знаю про бібліотеки R, SciPy, Octave та java, які здійснюють дзвінки до них - я відредагую питання, щоб це відобразити. Спасибі.
— користувач1172468

Ви сказали, що "я знаю про бібліотеки R, SciPy, Octave та java, які здійснюють дзвінки до них". Скажіть, будь ласка, що як ви будете називати код, написаний у "програмному забезпеченні статистики R" за допомогою Java?
— Аман Чаула

5
Чому ви хочете використовувати бібліотеку Java для основних статистичних тестів?
— Underminer

3
@Underminer тут задає правильне запитання. Ведення статистики на Java схоже на використання молотка для гвинтів. Маючи достатню рішучість і грубу силу, ви, безсумнівно, зможете прикрутити гвинт на місце, але не дуже елегантним або ефективним способом. Ви, швидше за все, пошкодите гвинт і болісні пальці.
— Marc Claesen

Відповіді:


10

Коли я змушений використовувати Java для основної статистики, математика apache commons - це шлях. Для сюжетів я використовую і рекомендую JFreeChart . Останній широко поширений, тому stackoverflow навіть має заселений тег для нього .

Редагувати

Якщо шукати набір, то, можливо, Дедусер - це варіант. GUI заснований на JGR, тим часом статистичні частини називаються в R. Це, здається, може бути розширеним як через R, так і через Java . Можна, наприклад, пропустити дзвінки до Rengine, але замість цього звертаються до бібліотеки Java, на яку посилаються. Але зізнаюся, я ще цього не пробував.

Наскільки я зрозумів ОП, оптимальним було б щось на зразок Rapidminer для статистики , оскільки Rapidminer - це чиста рамка Java, яка підтримує доступ до графічного інтерфейсу (включаючи візуалізації), використання в якості бібліотеки та розробки користувацьких плагінів. Наскільки мені відомо, щось подібне для статистики не існує. Я не рекомендую Rapidminer для цього конкретного завдання , оскільки, наскільки мені відомо, він включає лише найосновніші статистичні тести. Візуалізації останнім часом було розширено, але я не можу оцінити, наскільки вони налаштовані зараз.


Привіт, це те, що я намагаюся зробити, хотілося б, щоб був більш всебічний набір.
— користувач1172468

@ user1172468 Я оновив свою відповідь
— steffen

4

Ознайомтесь із Суан Шу: NumericalMethod.com . Він взагалі не є безкоштовним, але він безкоштовний для академічного використання.


Це насправді не відповідь на питання ОП. Це більше коментар. Ви б не хотіли розширити його, щоб зробити його більш відповіді? Крім того, ми можемо перетворити це в коментар для вас.
— gung - Відновіть Моніку

Можливо, ви могли б розширити, чому це не відповідь. Він шукає java-бібліотеку, і я вказав на ту, яка має більшість функцій, які він шукає.
— користувач765195

Ви маєте рацію, ця ситуація трохи неоднозначніша, ніж стандартна ситуація. Тим не менш, це по суті лише відповідь на посилання. SE вважає це коментарями, а не відповідями. У вас достатньо репутації, щоб ви надали це як коментар. Оскільки лише посилання є своєрідною відповіддю тут, і оскільки воно отримало позитивну позицію, я не позначив його для перетворення в коментар, але це може бути добре, якщо ви можете трохи додати його. Якщо ви не можете і вирішите не коментувати, я поважаю ваше рішення, тому я просто залишив вам записку.
— gung - Відновіть Моніку

Це не здається безкоштовним для академічного використання.
— космос

На жаль, вже не очевидно, але студентська версія все ще здається доступною за 100 доларів.
— користувач765195

3

Схоже на пропозицію Steffen RapidMiner, ви можете розглянути Weka . Це може бути більш орієнтоване на машинне навчання, ніж ви сподіваєтесь. У ньому є багато алгоритмів для таких завдань, як кластеризація, класифікація та регресія. У Weka є графічний інтерфейс, але він також може бути використаний і як бібліотека програмного забезпечення. Я бачив гістограми в графічному інтерфейсі, але не впевнений, легко їх повторно використовувати через бібліотеку чи ні.


Вітаю спасибі за відповідь, я дійсно думав про матеріал, який охоплював курс курсу статистики Град: Теми включають одно- та двопробні тести та довірчі інтервали для засобів та медіанів, описову статистику, тести на придатність, одно- та два -на ANOVA, одночасний умовивід, тестування дисперсій, регресійний аналіз та категоричний аналіз даних.
— користувач1172468

1

Спробуйте http://www.roguewave.com/Portals/0/products/imsl-numerical-libraries/java-library/docs/5.0.1/api/overview-summary.html

Він добре задокументований і забезпечує масу корисних статистичних та математичних функцій. Але, на жаль, це не з відкритим кодом. Тож якщо це вас не турбує, то з бібліотекою має бути добре.

Я не знаю, однак, якщо це забезпечує графічний вихід.


1
Привіт, дякую за посилання, чи знаєте ви, як воно порівнюється з Apache Commons Math.
— користувач1172468

1

Обчислювальне середовище DataMelt має багато статистичних бібліотек Java майже для будь-якої теми. Ви можете використовувати його за допомогою Jython, як пропонується на веб-сайті, але я використовую його у Java та Groovy.

Я можу сказати більше: проект DataMelt охоплює такі статистичні теми:

  • Випадкові числа
  • Найбільш популярні дискретні та продовжують розповсюдження
  • Описовий статистичний аналіз
  • Відповідність даних (лінійна та нелінійна)
  • Різні статистичні тести
  • Гістограми у 2D та 3D

Ось нелінійний приклад регресії, що використовує підхід до ідентифікації журналів для підключення даних до помилок

введіть тут опис зображення

Пакет безкоштовний.


3
Ласкаво просимо на сайт, @Remi. Це насправді не відповідь на питання ОП. Це більше коментар. Будь ласка, використовуйте лише поле "Ваша відповідь" для надання відповідей. Я визнаю, що це засмучує, але ви зможете прокоментувати де завгодно, коли ваша репутація> 50. Крім того, ви можете спробувати розширити, щоб отримати більше відповіді. Оскільки ви тут не новачок, ви можете прочитати нашу сторінку турів , яка містить інформацію для нових користувачів.
— gung - Відновіть Моніку
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.