Wpis z mikrobloga

#sas #bigdata #analizadanych

Mam taki kod

data NEWCARRRS;
set SASHELP.CARS;
where Cylinders=6 and Type="Sedan" and Horsepower>=220;
run;

i chciałbym go przeredagować tak, żeby wszystkie keep i where były przy data i set, wiec napisałem coś takiego

data NEW
CARRRWARS (where=(Cylinders=6 AND Type="Sedan" AND Horsepower>=220)) ;
set SASHELP.CARS (keep=make model Type);
run;

i #!$%@? mi błąd

ERROR: Zmiennej Cylinders nie ma w pliku WORK.NEW_CARRRWARS

Pomoże ktoś?
  • 14
błąd wywala, bo w instrukcji set wybierasz kolumny make, model, type a później w 'data' odwołujesz się do kolumny Cylinders, której to nie ma w wybranych kolumnach -> where=(Cylinders = 6...) powinno być przy set


@Mr_Av3r4ge: też tak uważam.

Błędem jest to, że używasz SASa,


@invtraveler: co jest złego w 4GL?
@modzelem: to jak to napisac?

Korzystając ze zbioru SASHELP.CARS stwórz zbiór NEW_CARS wybierając tylko6-cylindrowe sedany, które mają conajmniej 220 KM. Zachowaj jedynie informacje oproducencie, modelu i typie samochodu. Wszytskie instrukcje napisz przy instrukc-jach data oraz set.

tresc zadania
@ZawszeMyjeKubkiOctem: Możesz użyć pierwszego kodu i w drugim kroku użyć keep/drop - dwa kroki.

Możesz też użyć
data x;
set x;

(napisać zbiór)

Poza tym wydaje mi się, że keep powinno być zamienione w where bo to odnosi się chyba do tej biblioteki.
Zrób na raty i zobacz czy zgadza CI się liczba obserwacji.