Sas: jak usunąć przecinki z ciągu znaków


Najłatwiejszym sposobem usunięcia przecinków z ciągu w SAS-owym formacie jest użycie funkcji TRANSLATE , która konwertuje każde wystąpienie znaku na inny znak.

Aby to zrobić, możesz użyć następującej podstawowej składni:

 data new_data;
    set original_data;
    string_var = compress ( translate (string_var,"",','));
run ;

W tym konkretnym przykładzie usuwany jest każdy przecinek z każdego ciągu znaków ze zmiennej string_var w zestawie danych.

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Usuń przecinki z ciągu w SAS-ie

Załóżmy, że mamy następujący zbiór danych w SAS-ie, który zawiera informacje o różnych drużynach koszykówki:

 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
,Mavs, 113
Pacers 95
,Ca,vs 120
Lakers 114
Heat 123
King,s 119
Raptors 105
,Hawks 95
Ma,gic 103
Spu,,rs 119
;
run ;

/*view dataset*/
proc print data =my_data; 

Zwróć uwagę, że kilka ciągów w kolumnie zespołu zawiera przecinki w różnych miejscach.

Możemy użyć następującej składni, aby usunąć wszystkie przecinki z ciągów w kolumnie zespołu :

 /*create new dataset where commas are removed from each string in team column*/
data new_data;
    set my_data;
    team = compress ( translate (team,"",','));
run ;

/*view new dataset*/
proc print data =new_data;

Pamiętaj, że z każdego ciągu w kolumnie zespołu usunięto przecinki.

Oto, co faktycznie zrobił ten kod:

  • Każda funkcja TRANSLATE zastąpiła przecinek spacją.
  • Następnie funkcja COMPRESS usunęła białe znaki z każdego ciągu.

Uwaga : Pełną dokumentację funkcji SAS TRANSLATE można znaleźć tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:

Jak wyodrębnić liczby z ciągu w SAS-ie
Jak korzystać z funkcji SUBSTR w SAS-ie
Jak usunąć znaki specjalne z ciągów w SAS-ie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *