Suurin osa tämän haun tuloksista on työkaluja, jotka tuottavat Pythonia SAS-lähdekoodista, ja moni niistä tekee sen hyvin. Tämä sivu alkaa askelta aiemmin: onko siirto ylipäätään oikea teidän koodikannallenne, mitä tuloksen tarkistaminen maksaa ja mitä teette, kun vastaus on ei.
SAS-koodikannasta ulos vie neljä reittiä, ei kahta: anna se automaattiselle työkalulle, kirjoita se käsin uudelleen, aja SAS-ohjelmat sellaisinaan jollakin muulla kuin SAS:lla, tai jätä se rauhaan. Mikä niistä on oikea, ratkeaa lähes kokonaan kahdesta kysymyksestä: kuinka paljon koodia on ja onko jonkun toistettava se, mitä ohjelmat ennen tuottivat. Kaikki alla oleva on kunkin reitin hinta.
Python on parempi määränpää useammin kuin tämänkaltainen sivu yleensä myöntää. Neljä ehtoa tekee valinnasta selvän: koodikanta on tarpeeksi pieni, että yksi ihminen lukee sen viikossa, tiimi kirjoittaa jo päivittäin Pythonia, analyysi rakennetaan joka tapauksessa uudelleen, eikä mikään myöhempi vaihe vaadi uusien lukujen täsmäävän vanhoihin tarkalleen. Kun kaikki neljä pätevät, uudelleenkirjoittaminen on halvempaa kuin mikään yhteensopivuuskerros, ja jäljelle jää koodia, jota tiimi ylläpitää ilman toista kieltä.
Jokainen tässä oleva vaihtoehto on jollekulle oikea vastaus. Yksikään ei ole vailla hintaa, eikä kallis osa ole koskaan syntaksi.
Verkkotyökalut, toimittajien palvelut ja suuret kielimallit ottavat .sas-lähdekoodin ja palauttavat Pythonia, tyypillisesti kuvaten DATA-askeleet pandasiin ja tavallisimmat proseduurit statsmodelsiin tai scikit-learniin. Parin sadan rivin suoraviivaisessa datan käsittelyssä se on aito oikotie, ja luettava lähtökohta on käsissä minuuteissa. Lasku tulee myöhemmin: jokainen tulosrivi on luettava jonkun, joka osaa molemmat kielet.
Joku lukee SAS-ohjelman, päättelee mitä sen piti tehdä, ja kirjoittaa sen Pythonilla. Se lähtee hitaammin liikkeelle ja on ainoa reitti, joka päättyy koodiin, joka on Pythonin muotoista eikä SAS:ää Python-takissa. Tiimit, jotka ovat kahden vuoden päästä tyytyväisiä Pythoniin, päätyivät sinne melkein aina näin, yleensä antaen vanhan ohjelman käydä rinnalla kunnes luvut täsmäsivät.
Reitti, jonka vertailusivut ohittavat. Jenner on SAS 9.4 -kielen puhdastilatoteutus, kirjoitettu Rustilla: se lukee SAS7BDAT-tiedostot suoraan ja ajaa .sas-lähdekoodin sellaisenaan, joten luettavaa generoitua koodia ei ole eikä tiimille jää toista kieltä kannettavaksi. Mitä se ei tee, on kattaa koko SAS-kieli, ja kattavuus julkaistaan proseduuri kerrallaan, jotta voitte tarkistaa omanne ennen kuin luotatte siihen.
Tekemättä jättäminen on aito päätös ja usein oikea. Jos koodi on vakaa, sen ajoympäristö ei katoa tänä vuonna eikä kukaan pyydä muutosta, migraatio jota ette tee tuottaa parhaiten kaikesta tällä sivulla. Palatkaa kysymykseen, kun alustan vaihto, auditointi tai rekrytointiongelma pakottaa siihen.
Automaattinen muunnos ei kaadu syntaksivirheeseen; se paljastuu ensimmäisellä ajolla. Se kaatuu hiljaiseen numeeriseen eroon. SAS täyttää merkkiarvot oikealta välilyönneillä eikä Python tee niin, SAS laskee päivämäärät 1. tammikuuta 1960 alkaen kun pandas laskee 1. tammikuuta 1970 alkaen, ja DATA-askeleen MERGE ei käyttäydy kuten pandasin merge silloin kun avain toistuu molemmilla puolilla. Mikään niistä ei hälytä. Ulos tulee luku, joka on melkein oikein, ja se on pahinta laatua oleva virhe. Siksi todellinen hinta on rivi riviltä lukeminen joltakulta, joka hallitsee molemmat kielet, sekä jakso jossa vanha ja uusi ajetaan rinnakkain samalla syötteellä kunnes tulosteet täsmäävät — ja se hinta kasvaa koodin määrän mukana, ei sen nokkeluuden.
Teidän koodinne, teidän datanne ja lokit rinnakkain. Se on vertailu joka ratkaisee, eikä kukaan voi ajaa sitä puolestanne.
Aloita ilmainen kokeilu