R vs SAS, pourquoi les entreprises privées préfèrent-elles SAS?


143

J'ai appris R, mais il semble que les entreprises s'intéressent beaucoup plus à l'expérience SAS. Quels sont les avantages de SAS sur R?


17
C’est tragique, mais c’est vrai, je crains ...
gung

19
Un statisticien médical m'a dit un jour qu'il utilisait SAS, car s'il commettait des erreurs en raison de bogues logiciels et que des poursuites étaient engagées, SAS les indemniserait. R vient sans garantie.
Momo

42
@Momo R est livré sans garantie, c'est vrai, mais j'aimerais voir une référence que SAS en a une aussi forte. Je ne pouvais pas trouver le texte de la licence SAS sur leur site Web, mais j'ai réussi à trouver quelque chose pour un composant: support.sas.com/documentation/onlinedoc/sasc/doc650/common/…. La garantie est de 90 jours sur le support le logiciel est expédié et renonce à toute autre garantie. S'il vous plaît donner une référence autre que "quelqu'un m'a dit une fois".
Brian Diggs

13
Était juste conçu comme une anecdote, j'aime le cynisme pragmatique du commentaire. Mais heureux que vous ayez vérifié, je ne m'en suis jamais soucié
Momo

36
SAS vient avec la même garantie que R: none.
Frank Harrell

Réponses:


139

Je pense qu'il y a plusieurs problèmes (par ordre croissant de validité possible):

  1. Tradition / habitude : les gens sont habitués au SAS et ne veulent pas apprendre quelque chose de nouveau. (Cela rend les choses plus difficiles, votre façon de penser est différente dans SAS et R.) Cela peut s’appliquer à toute personne susceptible de vous envoyer du code, ou de lire / utiliser votre code, y compris les gestionnaires et les collègues.
  2. Méfiance vis-à-vis des logiciels gratuits : plusieurs personnes ont déclaré qu'elles n'étaient pas disposées à accepter les résultats de R, car aucune entreprise à but lucratif ne vérifie le code pour s'assurer qu'il donne des résultats corrects avant d'être envoyé aux clients, finissent par perdre des affaires.
  3. Big data : R effectue des opérations avec tout en mémoire, contrairement à SAS. Ainsi, si vos données se rapprochent des limites de votre mémoire, il y aura des problèmes.

Personnellement, je pense seulement que le n ° 3 a un mérite légitime, bien qu'il existe des approches pour le Big Data développées avec R. Les problèmes avec le n ° 1 parlent d'eux-mêmes. Je pense que # 2 ignore plusieurs faits: il y a une vérification qui se passe avec R, beaucoup des paquets principaux sont écrits par certains des plus grands noms de la statistique, et il y a eu des études qui comparent la précision de différents logiciels statistiques & R a certainement été compétitif.


41
Le point 1 gagne en légitimité si vous incluez également "l'infrastructure existante" sous cette bannière d'inertie. Si des processus métier existants utilisent déjà SAS, il existe un coût de transition lié à la modification. Si tel est le cas, il ne s'agit pas de choisir entre SAS et R, mais de choisir entre rester avec SAS et passer à R, ce qui peut donner une conclusion différente.
Brian Diggs

25
Le point 2 est que, si certains packages sont écrits par des experts, d’autres ne le sont pas. Qui se porte garant d'eux? Qui les teste? (Je sais qu'ils sont testés pour qu'ils fonctionnent, mais qui vérifie qu'ils fonctionnent correctement?) Je sais, vous pouvez consulter le code, mais cela présuppose le temps et la capacité de consulter le code d'un autre utilisateur et de le vérifier, souvent à l'aide de méthodes qui sont très complexes.
Peter Flom

18
@ PeterFlom, vous soulevez un point raisonnable. À mesure que les paquets deviennent plus ésotériques, il y a moins de garantie que de base. Mais jusqu'où devez-vous aller? Même SEM, qui est assez avancé, a été écrit en R par John Fox. En outre, StasK souligne la réalité de la vérification pratique des logiciels statistiques. Enfin, R est beaucoup plus complet que tout le reste, alors quand vous voulez faire des choses ésotériques avec d’autres logiciels, vous devez le coder vous-même. Qui garantit l'exactitude de ce code?
gung

33
Qui contrôle exactement SAS, Stata, SPSS, le code? Existe-t-il un moyen de savoir si les résultats qu’ils fournissent, selon les méthodes qu’ils utilisent, sont effectivement mis en œuvre correctement? En suivant, par exemple, la lme4liste de diffusion , je sais que les comparaisons avec SAS apparaissent assez régulièrement. Mais il est impossible de savoir si nous devrions même faire de telles comparaisons. Sans accès à la source, nous devons prendre ces entreprises au mot que les résultats produits par leurs logiciels sont réellement valides. Franchement, je préfère avoir la possibilité de réviser le code du logiciel que j'utilise.
Jason Morgan

28
C'est vrai, mais il est difficile de pénaliser un système informatique statistique pour son exhaustivité. Ou pour le dire autrement, la manière de faire de R est meilleure que celle de ne pas le faire par un autre système.
Frank Harrell

105

En plus des bonnes réponses apportées jusqu'à présent, j'ajouterais le facteur embarras. Si vous avez dépensé des centaines de milliers de dollars l'année dernière en support SAS et SAS et que vous proposez de ne rien dépenser pour R, avec des prix de support extrêmement bas (Revolution, etc.), une personne de la chaîne se demandera pourquoi. Était-ce une erreur de dépenser autant d'argent l'année dernière alors que R existait l'année dernière? Ou est-ce une erreur de laisser tomber un logiciel professionnel pour quelque chose créé par un groupe de bénévoles?

Une fois que le problème est formulé de cette manière, la proposition est perdue, il vaut donc peut-être mieux ne pas en parler.


47
C’est peut-être la réponse la plus cynique sur la validation croisée. +1
probabilitéislogique

11
@probabilityislogic: Merci! Pour être clair, il s’agit plus d’un commentaire sur une mauvaise gestion à un niveau supérieur que sur les utilisateurs du logiciel. J'ai travaillé dans des endroits où il y avait vraiment l'attitude (aux niveaux supérieurs): "Hmmm ... vous n'avez pas dépensé tout l'argent que nous avions prévu dans votre budget pour vous cette année. Évidemment, vous pouvez vous en tirer avec moins d'argent. coupez votre budget pour l’année prochaine et donnez un surplus au département qui a trop dépensé. " Règles Dilbert.
Wayne

11
"Vous n'avez pas dépensé l'argent ..." - c'est exactement ainsi que fonctionnait le système de planification soviétique, à ma connaissance personnelle.
mardi

5
Quelqu'un dans la chaîne doit savoir que, pour une fraction du coût d'une licence SAS, vous pouvez installer R Studio Server sur une machine virtuelle AWS dotée de 16 cœurs et de 256 Go de RAM. puissant que tout ce que SAS peut faire. Pensez à la rapidité avec laquelle des milliards de disques peuvent être appariés! Ou même, même les sources Open Source PostgreSQL avec Python + PERL seront disponibles à un prix dérisoire.
vagabond

1
"Ou est-ce une erreur de laisser tomber un logiciel professionnel pour quelque chose créé par un groupe de bénévoles?" C'est une fausse dichotomie!
kjetil b halvorsen

54

En plus de ce que Gung a correctement identifié ici, le plus gros problème dans le monde de l'entreprise est l'héritage. Et quand vous avez un code de production de bonne qualité, connu pour faire le travail, vous ne le changez pas. SAS existait depuis les années 1970 et était à l'époque le seul langage statistique de script efficace. La quantité de code de production accumulée depuis lors dans SAS dans les secteurs pharmaceutique et gouvernemental est inimaginable, des dizaines de milliers d'années. Réécrire cela dans R ou Stata prendrait quelques années, le code résultant deviendra plus flexible, plus efficace, plus transparent, plus facile et moins coûteux à maintenir, mais personne ne paiera pour une telle refactorisation. (D'après mon expérience, mon code Stata est généralement trois fois plus court; j'avais déjà eu un projet de conversion de code SPSS en Stata, où je l'avais rendu environ 20 fois plus court.

En un sens, il s’agit d’une histoire similaire avec les éditeurs universitaires: ils surfent sur une vague d’utilisateurs finaux qui maintiennent leurs abonnements par nécessité; une université sans abonnement à Nature n'est pas vraiment une université. La publication gratuite via des sociétés professionnelles permettra de réduire les coûts, les gens préparent leurs soumissions dans LaTeX ces jours-ci, ils sont donc prêts à photographier, et les mêmes personnes fourniront l'examen par les pairs, de sorte qu'il n'y aura aucun recul de qualité sur aucune des dimensions. Mais ... il n'y a pas de nom de marque et le facteur d'impact derrière les journaux en ligne.

Cela résume le tout: http://scatter.wordpress.com/2011/06/28/stata-12/ . Stata est préféré dans les domaines de l'économie et des politiques, et plus j'apprends le SAS, plus j'aime Stata.


38
SAS a une syntaxe horrible qui a commencé avec quelque chose de similaire à JCL (Job Control Language d'IBM) pour la soumission des travaux par lots de cartes perforées dans la journée. C'est remarquable que les gens l'utilisent encore, vraiment.
Wayne

6
+1 J'ai particulièrement apprécié le BlackBerry: iOS: Android: Nokia en tant que SAS: Stata: R: analogie avec SPSS dans le message scatterplot.
Jthetzel

6
Wayne, si vous avez déjà réfléchi à la question CARDS, vous réalisez que SAS est le progiciel statistique permettant de travailler avec des cartes perforées. Stata fonctionne avec des ensembles de données rectangulaires. R travaille avec des objets. Donc, selon le type de format de données que vous devez traiter, l’un peut être meilleur que les autres.
StasK

3
Un point important dans l'héritage est des choses comme l'approbation de la FDA ou des réglementations similaires. Les entreprises auxquelles j'ai parlé ne toucheront à rien (TM) après avoir traversé cette étape pour s'assurer qu'elles n'auront plus à passer par tout le processus. Et c'est un gros argument en termes d'argent.
cbeleites

48

Je travaille comme programmeur SAS depuis sept ans. À côté de moi, un collègue programme SAS depuis plus longtemps que je n’ai vécu. Comme indiqué ci-dessus, SAS repose sur une énorme inertie / héritage; mais SAS, tout comme R, est un moyen d’obtenir un moyen, pas le moyen lui-même.

SAS est extrêmement efficace pour l’accès séquentiel aux données et l’accès à la base de données via SQL est extrêmement bien intégré. Les PROC sont très bien documentés, mais malheureusement pas entièrement standardisés avec la notation (PROC OPTMODEL et IML en sont deux exemples). C'est un peu maladroit quand il s'agit d'écrire du code compliqué, et pas aussi élégant pour du code parallèle. J'ai également constaté que l'importation de fichiers csv était parfois une source de grande misère et je préférais simplement le transférer dans R puis dans une base de données.

Bien que SAS ait des interfaces avec des objets partagés et des dll, vous n’obtenez pas un bon accès à aucun fichier d’en-tête ou à quelque chose du genre, et la distribution de code n’est pas non plus disponible par le biais de packages heureux.

Il y a cependant peu d’inquiétude à propos de quelqu'un incluant dans votre code un paquet ésotérique, aujourd'hui disparu ou cassé, que vous devez maintenant maintenir, et la qualité du code dans SAS a tendance à être uniformément excellente (le code R est également excellent, et aussi librement. disponible pour tout le monde).

Comme mentionné précédemment, SAS est également extrêmement coûteux, mais c’est un bon outil à utiliser lorsque je sais qu’il existe une procédure en boîte qui répond bien à mes besoins.

R + SAS + mysql avec un peu de perl à coller ensemble fonctionne à merveille :)


11
La remarque à propos de la maintenance d'anciens paquets convient tout aussi bien à une macro écrite par un utilisateur qu'à un ancien proc que sas n'a pas mis à jour.
Probistislogic

4
R dispose également d’un très bon support SQL obtenu récemment via une dplyrbibliothèque - il traduit littéralement la syntaxe R / dplyr en SQL et appelle la base de données. Vous pouvez décider des opérations à effectuer sur le serveur de base de données et de celles utilisant localement la même syntaxe: cran.r-projet. org / web / packages / dplyr / vignettes / database.html
Tim

41

J'utilise donc à la fois R et SAS - certes dans le monde universitaire - mais il y a quelques raisons pour lesquelles j'ai tendance à aller parfois vers SAS:

  1. Meilleure documentation. R s'améliore, mais la documentation, en particulier la documentation officielle, est souvent terrible et opaque. Au-delà, SAS s'appuie sur une vaste infrastructure de livres: l'utilisation de R! La série aide cela dans R, mais ce n’est pas encore tout à fait là. Je peux me tourner vers l' analyse de survie de Paul Allison à l' aide de SAS ou l' analyse de données catégoriques à l'aide de SAS ou le livre que j'ai sur les méthodes de Monte Carlo utilisant SAS et j'ai un livre clairement écrit dans un style assez cohérent pour le langage que j'utilise.
  2. Inertie. Ce n'est pas simplement "les entreprises sont paresseuses" - l'inertie a aussi de la valeur. Il y a une connaissance institutionnelle. Untel a un code qui le fait - et le fait bien.
  3. Paquets. Certains paquets dans R sont incroyables. Certains forfaits ne le sont pas. Vous devez aller les trouver, les évaluer, et même dans ce cas, il y a des problèmes de sauts de foi en ce que le package est aussi bon que le mec qui l'écrit. C'est difficile de croire ça. SAS jouit essentiellement de la "pleine confiance et du crédit du SAS Institute", qui a de solides antécédents.
  4. Prise en charge d'une source unique. Si SAS est en panne, vous appelez SAS. Si R est cassé, vous appelez ....?

21
"Si R est cassé, vous appelez ...?" Brian Ripley :-) (+1 pour cette réponse bien argumentée)
chl

6
En ce qui concerne 4), je pense qu’il ya confusion des concepts. Si vous utilisez un programme et qu'il se casse, vous avez généralement deux options. Vous pouvez payer pour un soutien ou rechercher un soutien librement disponible (communauté en ligne, littérature, vous-même). R et SAS peuvent être comparés en tant que langages de programmation statistiques. Les deux ont un support librement disponible, qui peut également être comparé. R et SAS ne peuvent être comparés en tant que solutions de support technique payées ...
jthetzel

7
... SAS Institute fournit une assistance payée à SAS. Des sociétés comme Revolution Analytics et TIBCO (S +) fournissent une assistance payante pour R. Si vous souhaitez comparer des solutions d'assistance payante pour R et SAS, comparez SAS Institute à Revolution Analytics et TIBCO, et non à R. La confusion provient de ce que je pense. l'intégration étroite du langage SAS avec le SAS Institute et la non-intégration du langage R au support et à la formation d'entreprise liés à R.
Jthetzel

3
@jthetzel Je ne pense pas que sa "confusion". Le langage SAS est étroitement associé au service SAS. Toute plate-forme sur laquelle SAS travaille est prise en charge par SAS. Cela n’est pas vrai pour R - le support et le langage sont découplés, il peut ne pas y avoir d’aide pour vous en fonction de la plate-forme (essayez de parler à Revolution de temps en temps sans utiliser Windows ni RHEL ...), et ils ne prendront pas nécessairement la responsabilité de Les erreurs de RandomPackage, où comme SAS supportera PROC Arbitrary.
Fomite

2
@probabilityislogic Je pense que c'est au-delà de devoir l'évaluer pour voir si c'est approprié pour votre analyse. Oui, les deux peuvent se tromper et doivent être évalués. Mais je fais plus confiance à l'équipe de contrôle qualité de SAS qu'à moi-même.
Fomite

39

Personne n'a suggéré que la raison pour laquelle il est préféré est un simple idiotie. Voici deux citations que j'ai récemment rencontrées:

"Il était hors de question d'utiliser un logiciel libre tel que R - nous ne pourrions garantir un résultat parfaitement reproductible"

et

"Nous ne pourrions fournir aucune assistance à ce sujet car il s'agit d'un logiciel open source"

Deux minutes avec ces personnes leur montreraient à quel point ils se trompent.


3
Deux minutes avec quelles personnes? Sans références, c'est presque comme si vous aviez simplement inventé ces citations.
David Heffernan

4
le deuxième devis semble convenir à un service informatique du conseil; on ne peut pas s’attendre à ce qu’il prenne en charge tous les logiciels open source qu’un client puisse utiliser, d’où l’avertissement général. Je pense que la pire citation contre open source que j'ai entendu dire était de SAS soemthing comme « voulez - vous faire confiance à un avion gros porteur conçu en open source, un moteur peut déposer »
PaulHurleyuk

5
@PaulHurleyuk: +1 La citation était la suivante: «Nous avons des clients qui construisent des moteurs pour des avions. Je suis heureux qu'ils n'utilisent pas freeware quand je suis sur un jet. » Par un directeur marketing SAS dans cet article du New York Times sur R . La représentante de SAS a clarifié ses remarques dans un article de blog ultérieur .
Jthetzel

4
@PaulHurleyuk: De même, on ne peut pas s'attendre à ce que le conseil prenne en charge les logiciels propriétaires que le client pourrait utiliser. L'ouverture n'est pas la raison. Si l' on avait dit qu'ils ne pouvaient soutenir quoi que ce soit en dehors de leur ensemble de logiciels pris en charge alors tout va bien.
Spacedman

5
Dans les deux cas que je cite, il pourrait bien y avoir une décision rationnelle, mais les raisons données ne sont clairement pas ces raisons. Une raison rationnelle pourrait être "nous supportons déjà SAS, et nous ne pouvons pas nous permettre de supporter deux packages de statistiques". Mais "nous ne pouvons pas supporter cela parce que c'est open source" est un non séquentiel. Les deux parties peuvent être vraies, mais la conclusion ne suit pas. C'est comme si on disait "Elizabeth est la reine parce que le ciel est bleu".
Spacedman

23

Un problème ne semble pas avoir été abordé explicitement: couvrir le cul. Si vous partez avec SAS et que les choses explosent, le décideur peut toujours dire qu'il a acheté un logiciel à la pointe de la technologie, et comment a-t-il pu savoir qu'il se briserait? S'il décidait d'aller avec R, cet argument serait plus difficile à faire. Oui, cela est lié à l'argument d'inertie déjà mentionné ici.

Il y a quelques décennies, ils disaient que "personne n'a jamais été congédié pour avoir acheté IBM" , ce qui a été appelé la plus grande expression marketing de tous les temps.


2
Bien que je ne sache pas en quoi R est moins à la pointe de la technologie que SAS (et pour ce qui est de nombreuses procédures, j'ai l’impression que R est plus à la pointe de la technologie que SAS). J'imagine que beaucoup d'utilisateurs de SAS ne le savent pas cependant ...
Patrick Coulombe

21

En tant qu'utilisateur de SAS et de R, je dirais que la principale raison pour laquelle nous utilisons SAS sur R (quand nous le faisons) est sa capacité de traitement séquentiel. Nous n'avons besoin que de machines ne disposant pas de plus de 4 Go de RAM pour traiter 15 ans de données. J'aurais besoin d'une machine beaucoup plus grosse utilisant le stock R et je n'ai pas essayé de migrer le code SAS pour qu'il fonctionne avec Revolution R.


8
+1, bien qu'il soit intéressant de noter qu'il existe quelques façons de travailler avec des jeux de données plus volumineux que la mémoire en R ( bigmemory , ff , données fragmentées d'une base de données, large éventail d'options informatiques distribuées). Mais tout cela nécessite une installation. SAS ne fera en réalité que passer à travers tout ce que vous lui lancez, ce qui constitue un réel avantage.
Matt Parker

21

Les temps, ils changent

À compter de 2015, les actuaires âgés de moins de 35 ans préfèrent utiliser R - les manuels utilisent à la fois le code R et le code SAS. Les actuaires plus âgés n’ont jamais appris à utiliser R, ont préféré SAS et n’utilisent pas R. La proportion d’actuaires codant réellement dans SAS diminuera.

Si vous effectuez une recherche dans Google scholar pour trouver des articles faisant référence à SAS, vous obtiendrez 550 publications stables par an au cours des dernières années. Si vous recherchez des articles utilisant R ("R Foundation for Statistical Computing"), ils étaient 25 100 en 2014 et 16 700 à la mi-juillet 2015. Tracer le taux - il grandit très vite!

SAS ne s’est pas servi pendant quelques années en exigeant des universités des redevances importantes - ce qu’elles ont inversé depuis -, mais il est trop tard, de nombreuses universités se sont reconverties dans l’enseignement utilisant R et non SAS.

Les nouvelles techniques statistiques sont publiées dans des articles en conjonction avec un package R. Certaines techniques qui sont dans la base R depuis des années ne sont toujours pas apparues dans SAS. Vous pouvez maintenant utiliser R depuis SAS.

En résumé, les choses changent et changent rapidement.


19

SAS est utilisé dans l'industrie pharmaceutique parce que c'est ce que la FDA utilise et aime. Il y a quelques raisons sérieuses cependant. Les résultats sont traçables et la sortie est horodatée. Les statisticiens de la FDA peuvent vérifier ce que vous obtenez. C'est très bon pour la gestion de base de données et c'est un logiciel fiable. Bien sûr, on peut affirmer que de nombreux attributs de SAS sont présents dans d’autres progiciels, notamment R et que SAS est coûteux. Néanmoins, je pense que toute personne souhaitant devenir un statisticien appliqué et travaillant dans l’industrie aura intérêt à au moins apprendre à programmer dans SAS. Utilisez R ou STATA si vous préférez, mais connaissez SAS. Lorsque vous travaillez pour une entreprise qui veut que vous utilisiez SAS, elle paiera pour la licence.


4
Voici quelques informations supplémentaires sur la pensée de la FDA en ce qui concerne R: blog.revolutionanalytics.com/2012/06/fda-r-ok.html
Matt Parker

4
La Fondation R a publié un article en 2008 sur l' utilisation de R dans les essais cliniques réglementés . Cela devrait être une bonne référence pour les collaborateurs qui sont sceptiques quant à l’utilisation de R.
jthetzel

2
Je conviens qu'il y a une tendance à utiliser davantage R dans la recherche clinique et que beaucoup pensent que R peut être rendu aussi traçable que SAS.
Michael Chernick

6
La FDA s’exprime très clairement sur le fait de ne PAS approuver ou exiger l’utilisation d’un seul logiciel. Il est historiquement vrai que la plupart des soumissions ont utilisé SAS. La FDA a donc beaucoup de connaissances en SAS, mais elle a très vite adopté d'autres systèmes, utilisant R pour de nombreux travaux récents, notamment autour de la méta-analyse.
PaulHurleyuk

1
@PaulHurleyuk Ce que la FDA dira publiquement et son comportement dans la pratique ne sont pas nécessairement les mêmes. La plupart des sociétés pharmaceutiques sont principalement concernées par les essais cliniques de phases II et III et s'attendent généralement à ce qu'elles doivent utiliser et continueront d'utiliser SAS pour l'analyse de ces essais.
Michael Chernick

18

Je pense que cette citation d'Anne H. Milley résume ce que beaucoup de gens pensent de R:

Nous avons des clients qui construisent des moteurs pour les avions. Je suis heureux qu'ils n'utilisent pas de gratuiciel lorsque je suis sur un jet.

Malheureusement, je pense que cette idée fausse (gratuite = inférieure) est courante dans le grand public.


16

(légèrement en dehors du sujet): voir l’autre point: certains des avantages de R dans le monde universitaire ne s’appliquent pas à l’industrie.

Par exemple, dans le monde universitaire, il est clairement avantageux de dire aux étudiants d’aller chercher le logiciel et de travailler à la maison. Dans l'industrie, vous n'êtes généralement pas censé emporter de données à la maison ...

Vous n'êtes pas non plus censé essayer quelques choses (MC), télécharger des tonnes de paquets (même s'ils sont réputés et testés), utiliser des méthodes de pointe. Vous devez plutôt vous en tenir aux méthodes et au code utilisés depuis des années et dont le comportement est connu depuis des siècles. Vous ne gagneriez pas beaucoup de mérite académique avec cela.

Et bien sûr, comme cela a été mentionné: personne ne risquera de reprendre toutes sortes d’approbations réglementaires pour changer en R. De ce que j’ai vu, c’est moins de R et plus sur les coûts énormes + les efforts nécessaires pour obtenir une approbation réglementaire. .


3
Il n'y a rien à faire pour rétablir l'approbation réglementaire afin de passer à R.
Frank Harrell

2
@Frank: nous pensons peut-être à différents scénarios: je pense que vous songez éventuellement à un nouvel essai (et vous avez raison) - je pense davantage à l'analyse des processus (analyse chimique + statistique) des processus en cours. production. Autant que je sache, vous ne pouvez pas simplement basculer l'analyse de vos données là-bas (mais ce n'est pas le pays SAS). Mais je peux me tromper.
cbeleites

2
Je ne connais pas ce monde, mais je soupçonne que les scientifiques ont plus de liberté qu'ils ne le pensent.
Frank Harrell

13

Bien que cela soit assez pessimiste, ma réponse serait que le type de personnes qui prennent des décisions radicales dans des sociétés telles que "nous venons d'utiliser SAS" sont également celles qui ne font pas confiance à ce qu'elles ne comprennent pas et qui en pensent automatiquement la valeur. de quelque chose est directement proportionnelle à la quantité d'argent que vous dépensez dessus. Cela les amène à préférer payer SAS, plutôt que de passer du temps à chercher des alternatives.


12

Pourquoi une grande entreprise pharmaceutique voudrait-elle même passer de SAS à R? SAS coûte des millions, mais ce n'est rien pour une société pharmaceutique. Cependant, convertir tous les systèmes de reporting stables de SAS en R coûterait 50 à 100 fois plus cher.

SAS a un système de support phénoménal: chaque fois que j'avais besoin d'aide, ils étaient en mesure de le fournir en quelques heures.

Et qu'est-ce que R a exactement que SAS n'a pas: 1) de meilleurs graphiques ... ok, c'est un gros mais les graphiques ne sont pas tout. En plus de R, vous pouvez toujours utiliser un outil supplémentaire pour créer des graphiques sympas. SAS n’est pas si mal en matière de graphisme 2) un langage de programmation moderne et plus efficace. Beaucoup d'utilisateurs de SAS ne sont pas des programmeurs et ne se soucient pas d'utiliser un langage cool. Ils veulent juste pouvoir analyser les données.

J'adore R, mais il serait insensé pour une grande entreprise de se convertir à SAS. Il pourrait être logique pour les petites entreprises si


3
D'accord avec toi, Max. Enfin une réponse venant de quelqu'un de l'industrie. Il est cher de passer à R.
Dan

3
C'est faux. Le coût de l’aide à la programmation SAS est bien plus élevé que celui de R. Les entreprises engagent des paliers de programmeurs SAS pour compenser le langage archaïque utilisé par SAS.
Frank Harrell

Je suis dans l'industrie et utilise les deux. R peut effectuer des manipulations de données et, plus important encore, des analyses avec beaucoup moins de lignes et peut donc être développé beaucoup plus rapidement. Je dirai que certaines sociétés pharmaceutiques ont mis au point des systèmes SAS de programmation réglementaire qui ont été couronnés de succès. Le point est à prendre en considération: pourquoi changer (à ce stade)? S'ils le faisaient à partir de zéro, peut-être R plutôt.
AdamO

11

Il y a plusieurs avantages principaux, sans ordre particulier

  • SAS a une base installée importante et une longue expérience

J'évite volontairement l'utilisation de termes péjoratifs tels que "héritage" ou "habitude" De nombreuses entreprises utilisent SAS depuis 30 ou 40 ans et disposent de millions de lignes de code de travail. De plus, tous les avantages d’une base de code stable avec des millions d’utilisateurs dans un domaine où de petites erreurs peuvent être critiques. C'est la même raison pour laquelle les versions Unix sont toujours populaires bien qu'Unix ait plus de 40 ans et soit obsolète à certains égards. Enfin, il existe une vaste communauté de professionnels SAS expérimentés, habitués à résoudre les problèmes de l'entreprise.

  • SAS est bien adapté aux environnements de données et d'exploitation hétérogènes et complexes

Les entreprises disposent de nombreuses sources de données différentes, basées sur différents types de systèmes, ainsi que, dans de nombreux cas, de multiples environnements d’exploitation. R n’a acquis que très récemment des capacités extrêmement rudimentaires qui ne peuvent pas être gardées en mémoire. Comparez cela à la capacité de SAS de prendre en charge le traitement natif, optimisé, en base de données pour terradata, pour ne citer qu'un exemple. Dans la plupart des situations réelles, les aspects les plus difficiles de l’analyse concernent les données et l’environnement d’exploitation. (Vous devez exécuter le code de scoring de modèle développé par Windows sur l'ordinateur central? Avec SAS, pas de problème. Avec R, vous n'avez pas de chance.) R ne résout aucun de ces problèmes.

  • L'utilisateur n'a pas à s'inquiéter d'être "seul"

Un utilisateur SAS peut être raisonnablement certain que chaque module de code a été testé par des personnes qualifiées. Il n'est pas nécessaire de consacrer du temps et des efforts à apprendre la provenance du code ou à le valider de manière indépendante. En outre, si vous rencontrez des problèmes de toutes sortes, une assistance solide (allant de quelque chose d'aussi simple que la documentation à quelque chose d'aussi détaillé que l'exploration détaillée des résultats inattendus ou du comportement d'une méthode sophistiquée) permet à l'utilisateur de prendre le téléphone et d'obtenir de l'aide.

  • C'est assez bon"

La langue désactive certaines personnes car elle diffère de la programmation moderne par rapport aux langues modernes. Cela dit, le langage est de haut niveau, puissant, expressif et complet. En bref, une fois que vous l’apprenez, le travail est fait. Pour les entreprises, l’élégance de la solution n’est pas un argument de vente.


2
L'élégance peut-être - mais le coût? Je pense que les entreprises se soucient de ça!
probabilitéislogic

2
R peut fonctionner sur n'importe quoi, d'un téléphone portable à un superordinateur, à un coût nul, mais également à un ordinateur central, également à un coût nul.
Sean

9

Service client.

Une fois, j’ai eu une conversation avec un ami qui travaillait dans une entreprise spécialisée dans l’installation de serveurs, puis il m’a expliqué pourquoi les grandes entreprises optaient toujours pour les produits Microsoft plutôt que de devenir open source. L’avantage de Microsoft par rapport à ses concurrents open source est le support client. Si quelque chose ne va pas avec le produit, la société peut appeler Microsoft. Les grandes entreprises bénéficient même d’un support personnalisé. Ce n'est pas le cas avec les logiciels open source.

Je pense que c’est exactement la même raison pour laquelle SAS obtient la priorité sur R.


2
revolution R (ou d'autres entreprises)?
Ben Bolker

4
Je pense que ces commentaires ne sont pas corrects. Dans le monde des serveurs, les règles Open Source et le serveur Web Apache sont les serveurs Web les plus populaires.
Frank Harrell

Je n'ai jamais dit qu'il parlait de serveurs. Plutôt sur des produits comme Microsoft Office. J'ai seulement mentionné qu'il travaillait dans le monde des serveurs.
Raskolnikov

2
Cela me rappelle des entreprises qui utilisent un point de partage et un wiki open source. Le sharepoint est presque toujours stérile et seul le wiki est mis à jour.
TLJ

9

Qu'en est-il de Frontends? Quel est l'équivalent de R pour SAS Enterprise Guide, Web Report Studio ou Enterprise Miner? Edition: Ces outils permettent à un utilisateur ne faisant pas de programmation d’utiliser un DATA WAREHOUSE, sans connaissance de la technologie sous-jacente. Ce ne sont pas principalement des outils pour utiliser SAS en tant que tel. Les interfaces graphiques R ne sont que des IDE pour le système / langage R, autant que je sache. Ils ne peuvent pas aider les utilisateurs non techniques qui souhaitent obtenir des informations et des informations de la part du DWH.


2
C'EST une réponse. Ce qui rend SAS si précieux pour les clients (comme nous), c’est la facilité d’utilisation pour ceux qui n’ont pas à écrire une seule ligne de code.
Kurt

2
@Kurt, gung ne voulait pas dire que ce n'est pas une réponse, mais plutôt que votre réponse ne correspond pas à ce site (et surtout à la question actuelle, en fait)
Stéphane Laurent

Il y a des tonnes d'interfaces graphiques pour R, voir stats.stackexchange.com/questions/5292/…
naught101

2
Eh bien, j'ai travaillé avec RStudio. Comparé à SAS Enterprise Guide, il lui reste encore beaucoup de chemin à parcourir pour atteindre la facilité d'utilisation d'un utilisateur novice. Ajoutez le fait qu'il manque un équivalent à R pour Metadata Server. Et il me manque complètement un équivalent prêt à l'emploi pour WRS (peut-être que je suis aveugle :)). La beauté d'un langage et la productivité que vous pouvez atteindre signifient presque rien pour les entreprises où 90% des "clients" de l'entrepôt de données ne peuvent écrire "Hello World" dans aucun environnement de programmation. C'est ce que je voulais souligner, et c'est là qu'il reste encore beaucoup de travail à faire.
Kurt

2
Merci d'avoir mis à jour votre réponse, @Kurt. Je pense que ce sera plus utile pour les futurs lecteurs maintenant. Il est vrai que SAS propose des offres d’entrepôts de données et de point & clic plus complètes et prêtes à l’emploi que R. Il s’agit d’un point raisonnable à soulever. +1
fétiche

8

J'ai déjà travaillé pour une société de conseil qui avait aidé SAS à un grand fabricant de puces de la Silicon Valley. Notre personne de contact de la société nous a dit qu’une autre société lui avait proposé de lui donner exactement le même conseil, en utilisant un logiciel différent qui couvrait tous les domaines couverts par SAS et qui coûterait à la société une fraction de celle facturée par SAS. ( 30 000 dollars contre 1 000 000 dollars ). La personne de contact a envisagé la marche à suivre et a décidé de ne pas informer son chef de l'offre, car il craignait d'être licencié pour avoir utilisé SAS et de ne pas envisager d'autres solutions moins coûteuses. Au lieu de cela, il a insisté pour que notre société de conseil accorde à leur société une importante réduction de nos frais de conseil. Notre société a accepté.


1
Votre personne de contact ne pouvait donc pas affirmer que R était encore relativement nouveau par rapport à SAS et il souhaitait attendre pour s'assurer que R était bien établi avant de l'utiliser.
probabilityislogic

6

Je ne pense pas que la sécurité des applications ait été mentionnée. Cette question a été soulevée dans Stack Overflow mais a été abandonnée car elle était hors sujet.

Je collabore avec le Conseil national suédois de la santé et du bien-être qui utilise SAS. Quand j'ai parlé à leurs statisticiens (qui, comme R), ils prétendent que leurs informaticiens préfèrent SAS car ils ne font pas confiance aux packages téléchargés dans R. Ma femme travaille également dans SAS et son institution prétend souvent avoir le même problème ...

J'aimerais voir des commentaires sur cette question. J'ai fait une recherche rapide mais je n'ai trouvé aucune bonne référence ...


3
Quelle est l'alternative au téléchargement d'un paquet offrant de nouvelles fonctionnalités (comme le font la plupart des paquets R)? Est-ce à la maison de développer ces capacités? Est-ce plus fiable?
Frank Harrell

2
@ FrankHarrell Je suis d'accord, mais je pense que cela peut être un domaine facile à cibler et à améliorer pour les développeurs R. Une solution simple pourrait consister en différents niveaux de sécurité pour les packages: si un package reçoit un appel système ou se connecte seul à Internet, il doit avoir une autorisation plus élevée. Cela pourrait permettre l'installation d'installations ne disposant que d'une autorisation de bas niveau dans les institutions / entreprises où une fuite de données est une préoccupation majeure. En tant qu'utilisateur, je pourrais également effectuer une vérification supplémentaire lorsque je choisirai d'installer un logiciel à jeu élevé. (Au fait, quand est-ce que votre livre (RMS version 2) est programmé?)
Max Gordon

J'espère que la deuxième édition de RMS sera disponible dans un peu plus d'un an.
Frank Harrell

5

Si j’ai compris que c’était le plus convaincant, c’est que SAS dispose d’une bibliothèque étendue de modules spécifiques aux entreprises, que les utilisateurs de ces secteurs utilisent tous. Il s’agit donc d’un blocage.
Mais aussi, SAS a répondu aux besoins de ces segments verticaux de l’entreprise et les a optimisés en fonction du sens suivant: «l’utilisateur n’a pas à faire beaucoup de travail supplémentaire pour obtenir les résultats». Je ne suis pas un utilisateur SAS. Cela ne constitue donc pas une défense partiale de la stratégie commerciale de SAS.


4

En tant que grand produit commercial de SAS, les vendeurs rémunérés déploient des efforts vigoureux et coordonnés pour le promouvoir. Je ne pense pas que les efforts visant à promouvoir l'utilisation de R puissent aller dans ce sens.


8
Oui, les gens ont dans une certaine mesure découvert R sur leur peau. Mais une grande partie du problème se résume à l’inertie de l’apprentissage d’une nouvelle langue. De nouvelles langues font leur apparition et présentent des avantages par rapport aux anciennes, mais les utilisateurs restent accrochés aux anciennes (témoin COBOL). La programmation dans SAS est extrêmement inefficace, nécessitant peut-être le double du nombre de programmeurs effectuant le même travail que R, mais les experts de SAS sont heureux de fredonner et les entreprises craignent le type de perturbation qui leur permettrait d'économiser des millions de dollars. en salaires.
Frank Harrell

3

Je regarde les logiciels Open Source ou sous licence comme celui-ci, que ce soit SAS ou autre chose. Mon service informatique est là pour fournir un service à notre entreprise. La société ne gagne pas d’argent grâce aux services informatiques. L'entreprise a un chiffre d' affaires de $ de 16 milliards. Il en coûte environ $ 200 millions par an. Si l' argent était la question que je réduirait les coûts, mais si j'économise 10% ( $ 20 millions) de mon budget, sera l'avis de l' entreprise? Vont-ils simplement réduire mon budget l'année prochaine? Si le service informatique échoue, l’entreprise perd des revenus, le montant de la nature de la défaillance variera. Certaines parties de l'entreprise peuvent ne plus générer de revenus. Si un produit comme SAS échoue, je peux intenter un recours en vertu d’un contrat. Si un produit OSS échoue, je ne peux pas. Je ne récupérerai pas mes dollars16 milliards, mais je vais peut-être en récupérer, et de manière réaliste avec SAS, il est peu probable que vous perdiez le lot. La différence de prix par rapport au coût doit justifier tout risque supplémentaire perçu pour l’entreprise. Parfois, il est moins coûteux de rester avec SAS que de se recycler. Parfois, les problèmes sont plus prioritaires et les entreprises restent donc avec SAS. Certaines entreprises n’ont pas besoin de toutes les fonctionnalités, auquel cas les alternatives sont viables. Certains n'ont pas besoin de soutien et encore une fois, les alternatives sont viables. Si vous répondez aux besoins de votre entreprise, les deux options sont valables. Si vous souhaitez apporter un soutien à une entreprise, vous devez examiner le coût total de possession sur 5 à 10 ans, la capacité de recruter des experts dans les outils, la stabilité du produit. vous n’avez donc pas besoin de tout réécrire à chaque nouvelle version, les formations disponibles,


4
Je ne suis pas votre raisonnement. L'argent gaspillé en payant des programmeurs pour programmer dans un langage archaïque (SAS) par rapport aux langages gratuits modernes est stupéfiant.
Frank Harrell

4
@ Frank - Je ne suis pas d'accord avec votre description. Un programmeur SAS compétent peut être hautement productif dans SAS, et des programmeurs SAS compétents sont largement disponibles. Je vous concède que R est structuré davantage comme un langage moderne et qu’il pourrait donc être plus facile à apprendre pour les programmeurs qui connaissent, par exemple, Java. D'après mon expérience dans de nombreuses entreprises, la productivité des développeurs utilisant SAS est rarement un problème important.
JBK

9
Après avoir utilisé SAS pendant 23 ans et S-Plus / R pendant 22 ans, je peux dire qu'un programmeur SAS très expérimenté peut être très productif, mais qu'un programmeur expérimenté R peut être facilement trois fois plus productif.
Frank Harrell

2
"Je peux poursuivre en justice sous contrat" ​​haha ​​- un code incorrect écrit par les employés est beaucoup plus susceptible de poser problème que quelque chose que SAS ou R ne "fait lui-même"
probabilitéz-

1

Quelques raisons que je n'ai pas vu mentionnées:

  1. Meilleure documentation. La documentation SAS est commentée, la documentation R est succincte. De nombreuses entreprises peuvent préférer une documentation détaillée.

  2. Meilleurs messages d'erreur. Les messages d'erreur de R semblent souvent conçus pour prouver que la personne qui écrit le message est plus intelligente que celle qui le lit.

  3. Support technique. SAS dispose du meilleur support technique que je connaisse, fourni par SAS. Vous pouvez obtenir de l'aide avec R, mais cette aide est dispersée à différents endroits et n'est pas toujours disponible. Les personnes sur les différents sites qui fournissent de l'aide avec R sont des volontaires - et les volontaires ne sont pas obligés d'aider. Les techniciens du support technique SAS sont payés pour faire ce qu’ils font - et ils le font bien. Non seulement ils le font bien, mais ils font poliment un trait qui n’est souvent pas présent dans toutes les communautés R (mon préféré? "J'ai reçu de l’aide en tapant 'aide', pourquoi ne pas essayer de taper 'aide'?")

  4. LATEX


1
Je suis sûr qu'il y a des entreprises qui vendent du support technique à R. Mais c'est bien que je n'ai aucune expérience!
kjetil b halvorsen le

1

Je pense que l'angle hérité peut être important pour la raison suivante. Une organisation embauche une personne, appelez-la personne X. Il s’agit d’un gourou de l’informatique, d’un assistant, etc. Ils construisent des programmes / outils SAS géniaux / etc. Ils sont si bons que les autres membres de l’organisation ne se sentent pas obligés de comprendre le fonctionnement des programmes. Il est si facile d’appuyer sur un bouton et tout fonctionne (les boîtes noires magiques).

La personne X quitte l’organisation. Malheureusement, les connaissances de la personne X quittent l'organisation (la documentation et la gestion des connaissances n'étaient pas hiérarchisées, les programmes de travail l'étaient). Ils sont remplacés par Y. Y est formidable avec R mais n’a aucune idée de SAS et n’a donc aucune idée du fonctionnement réel des programmes SAS. Il y a une courbe d'apprentissage énorme pour même comprendre ce queCTCTest nettement supérieur à une licence d'un an pour SAS. Je m'attends à ce que SAS fasse une analyse de ce compromis et la laisse influencer la manière dont elle fixe les droits de licence (eh bien, je le ferais si je travaillais chez SAS). Notez également que les procédures de traçage SAS sont bien meilleures qu’il ya une dizaine d’années (par exemple, proc sgplot vs proc plot). coïncidence que R ait fait du bon tracé en premier? Je crois que non! Cela réduit efficacement l'efficacité de la commutation car le tracé n'est plus très différent - R est toujours meilleur, mais pas assez pour changer ...


0

Pour les statistiques industrielles, il existe des responsables de l'assurance de la qualité qui n'ont (généralement) aucune formation en programmation, en statistique ou en sciences et qui auditent des statisticiens, des programmeurs et des scientifiques. Ils veulent savoir: "Comment savez-vous que ce que vous faites est bien?" et "Si c'est faux, comment pouvons-nous blâmer quelqu'un et comment vont-ils payer pour cela?".

La licence GNU / GPL Copyleft est livrée avec un texte pré-enregistré indiquant: "R est un logiciel libre et ne contient absolument aucune garantie" en texte en majuscules exactement comme je l’ai écrit. C'est scandaleux. Quand une personne de qualité lit ce texte, elle discrédite fondamentalement R. Je veux dire, si un produit est bon, cela vaut la peine d'ajouter une garantie non? De tels produits commerciaux nous ont laissé croire. En fait, c’est finalement la FDA qui a déclaré qu’elle accepterait les demandes réglementaires en R reflétant un changement radical dans l’industrie du logiciel. (Notez que cette déclaration vient après la date de publication initiale de la question.)

Pour quelqu'un qui ne connaît rien aux ordinateurs, les scénarios imaginaires de sécurité, d'irreproductibilité et de graves erreurs scientifiques sont illimités du fait de cette absence absolue de garantie. Nous convenons tous que les erreurs peuvent avoir des coûts catastrophiques. Pour votre licence SAS, SAS dispose d’experts capables d’expliquer leur logiciel aux auditeurs. Dans le cas impossible, où SAS causerait un tel problème, ils pourraient être tenus responsables des amendes et des sanctions (ils ont également suffisamment d’argent pour que les avocats puissent être totalement exonéré dans un tel cas). La charge et les coûts liés à la présentation d’un dossier par un analyste / programmeur pour R correspondent essentiellement à une licence SAS. Non pas que la programmation dans SAS vous exonère complètement du fardeau accablant de la conformité à la qualité!

Donc, en gros, je dirais que le contentieux a joué un rôle de premier plan dans la nécessité d’un logiciel de licence coûteux.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.