CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Python vs R ( vs autres?)

[Xenio]
[Xenio]
Niveau 11
07 novembre 2016 à 19:21:11

Salut,

Je suis en L2 maths, j'ai déjà de bonnes notions de prog en python. (je précise que prog pour moi => maths, genre modélisation ect)
Et j'ai une UE "modélisation maths et bio", va falloir faire un projet. En cours on a vu le langage de prog R pour tout ce qui est modélisation and co

Je sais pas trop quel langage utilisé :(
Le quel serait le plus pertinent à utiliser ? Genre plus tard c'est mieux d'avoir plus d'xp dans le quel des deux ?
Je compte pas du tout m'orienter vers l'info, c'est juste que j'aurai besoin de programmer ce que j'aurai modélisé mathématiquement (typiquement résoudre numériquement une EQ diff non linéaire)

Merci d'avance

Message édité le 07 novembre 2016 à 19:22:04 par [Xenio]
[Xenio]
[Xenio]
Niveau 11
07 novembre 2016 à 19:25:04

Je vais aussi m'amuser à faire des petites simulations.

Genre là je veux faire un algorithme qui calcul à partir de quel terme la suite de Syracuse-n vérifie la conjecture de Collatz et ce pour un nombre n variant de 1 à ce que je veux ^^
Simple mais des trucs comme ça

Message édité le 07 novembre 2016 à 19:25:12 par [Xenio]
AlphaCygni
AlphaCygni
Niveau 10
08 novembre 2016 à 08:55:20

Ben R est surtout utilisé pour faire des stats, Python pour une utilisation plus générale. Mais t'es pas obligé de choisir entre les deux, c'est tout à fait possible de connaître plusieurs langages.

MrGreez94
MrGreez94
Niveau 10
08 novembre 2016 à 10:58:36

J'ai eu l'occasion d'utiliser les deux. Globalement R est peut-être un peu plus adapté (et encore...) pour tout ce qui est stats et analyse de données mais Python demeure quand même plus polyvalent.

Comme il est dit, tu n'es pas obligé de choisir mais si vraiment le choix était à faire je dirais Python pour sa polyvalence.

[Xenio]
[Xenio]
Niveau 11
08 novembre 2016 à 12:58:00

D'accord merci à vous, je pense éviter de me cloisonner sur un langage

Sinon hier après avoir fait un petit truc en R et l'avoir comparé avec son équivalent sous C++, la différence de temps de "rendu" (?) est d'un facteur 200 :ouch:

tbol
tbol
Niveau 20
08 novembre 2016 à 14:21:17

R ça sert surtout pour l'analyse statistique. L'avantage de Python c'est que c'est plus généraliste, donc tu pourra l’utiliser dans pleins de situations différentes.

SobolevSpace
SobolevSpace
Niveau 35
08 novembre 2016 à 15:37:28

Je te dirais "autres" et de te tourner vers scilab (l'équivalent de matlab gratuit)
tu peux aussi bien faire des statistiques que modéliser l'asservissement d'un robot [[sticker:p/1kkn]]

godrik
godrik
Niveau 30
08 novembre 2016 à 15:53:55

Xenio, ca depend a quel niveau. Souvent les models sont concu sur des petits et des problemes a petite echelle en utilisant des langages de haut niveau, hautes productivites comme python, R, SAS, et matlab. Dans mon batiment, les gens qui font des modeles sont partages 50/50 entre matlab et python.

Cependant, le modeles utilisent en general des algo de calcul numerique qui eux, ne sont jamais ecrit dans ces langages la parcequ'ils sont beaucoup trop lent. Ils sont typiquement ecrit en C++, en CUDA (pour gpu), en fortran (plus rarement), certains en java. Caffe, TensorFlow, GraphLab, c'est tout ecrit en C++. Certains des moteur ecrit au dessus de Hadoop sont en Java.

Une fois que les modeles sont trouve, ils sont deployes en pratique sur des systeme qui passe a l'echelle plus. Et typiquement a ce niveau la, les modeles/application sont ecrit en java ou en C++, parfois en python.

[Xenio]
[Xenio]
Niveau 11
08 novembre 2016 à 16:03:07

Ce que tu me dis c'est qu'on programme genre en R pour trouver le modèle à petite échelle puis quand il est bien fait on passe sur du C++ en augmentant le nombre de paramètres les valeurs ect ?

D'accord bon merci pour tout vos conseils, faut que je soit polyvalent quoi ^^

Message édité le 08 novembre 2016 à 16:03:20 par [Xenio]
godrik
godrik
Niveau 30
08 novembre 2016 à 19:19:40

Plus qu'augmenter le nombre de parametre, c'est aussi une question de traiter plus de donnee.

Message édité le 08 novembre 2016 à 19:19:49 par godrik
MrGreez94
MrGreez94
Niveau 10
09 novembre 2016 à 11:56:44

Le 08 novembre 2016 à 15:53:55 godrik a écrit :
Xenio, ca depend a quel niveau. Souvent les models sont concu sur des petits et des problemes a petite echelle en utilisant des langages de haut niveau, hautes productivites comme python, R, SAS, et matlab. Dans mon batiment, les gens qui font des modeles sont partages 50/50 entre matlab et python.

Cependant, le modeles utilisent en general des algo de calcul numerique qui eux, ne sont jamais ecrit dans ces langages la parcequ'ils sont beaucoup trop lent. Ils sont typiquement ecrit en C++, en CUDA (pour gpu), en fortran (plus rarement), certains en java. Caffe, TensorFlow, GraphLab, c'est tout ecrit en C++. Certains des moteur ecrit au dessus de Hadoop sont en Java.

Une fois que les modeles sont trouve, ils sont deployes en pratique sur des systeme qui passe a l'echelle plus. Et typiquement a ce niveau la, les modeles/application sont ecrit en java ou en C++, parfois en python.

Ça ne se passe pas toujours comme ça, de plus en plus d'entreprises utilisent des framework de calcul distribué comme Hadoop et notamment Spark.
Typiquement il y a des versions de Spark pour des langages de haut niveau comme Scala (le langage dans lequel Spark est écrit), Python ou R, ça n'est pas disponible en C++ par exemple.

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment