mirror of
https://github.com/SASPAC/baseplus.git
synced 2025-12-15 16:24:35 +00:00
## The BasePlus package [ver. 2.0.1] This release is dedicated to all dyslexics in the world. ### Changes: New macros: - [`%expandDataSetsList()`](https://github.com/SASPAC/baseplus/blob/2.0.0/baseplus.md#expanddatasetslist-macro) allowing to expand data set lists of the form: `a1-a3`, `b_:`, mixed, and `_all_`; - [`%unifyVarsCaseSize()`](https://github.com/SASPAC/baseplus/blob/2.0.0/baseplus.md#unifyvarscasesize-macro) allowing to convert all variables in a list of datasets to all-low-case or all-upcase letters. Both macros are result of recent discussions at `SAS-L` and `communities.sas.com`. New format/informats: - [`bpklength.`](https://github.com/SASPAC/baseplus/blob/2.0.0/baseplus.md#bpklength-format) - [`bplength.`](https://github.com/SASPAC/baseplus/blob/2.0.0/baseplus.md#bplength-format) - Bug fix in spelling (`lenght` vs `length`). See [documentation](https://github.com/SASPAC/baseplus/blob/main/baseplus.md) for details. --- SHA256 digest for BasePlus: `F*FB102C9B12E870666C15A651017D48E0141E47D64C11437350D0EC75A7E9E609` --- ### Example 1. New macros. ~~~~sas data a1 a2 a3 b_x b_y b_z; set sashelp.class(obs=1); run; %put #%expandDataSetsList(lib=work,datasets=a1-a3 b_:)#; proc print data=a1; proc print data=b_x; run; %unifyVarsCaseSize(work,a1-a3 b_:) proc print data=a1; proc print data=b_x; run; ~~~~ ### Example 2. New formats/informats: ~~~~sas data _null_; x = input('żółw', bpklength.); y = input('żółw', bplength.); put x= y=; run; ~~~~ ~~~~log x=4 y=7 ~~~~
64 lines
1.5 KiB
Markdown
64 lines
1.5 KiB
Markdown
## `basePlus` - The BASE SAS plus a bunch of functionalities I am missing in BASE SAS :-)
|
|
|
|
---
|
|
|
|
The **BasePlus** package adds a bunch of functionalities I am missing in BASE SAS, such as:
|
|
```sas
|
|
call arrMissToRight(myArray);
|
|
|
|
call arrFillMiss(17, myArray);
|
|
|
|
call arrFill(42, myArray);
|
|
|
|
rc = delDataset("DataSetToDrop");
|
|
|
|
string = catXFn("date9.", "#", myArray);
|
|
|
|
format x bool.;
|
|
|
|
%put %getVars(sashelp.class, pattern = ght$, sep = +, varRange = _numeric_);
|
|
|
|
%rainCloudPlot(sashelp.cars,DriveTrain,Invoice)
|
|
|
|
%zipLibrary(sashelp,libOut=work)
|
|
|
|
%bpPIPE(ls -la ~/)
|
|
|
|
%dirsAndFiles(C:\SAS_WORK\,ODS=work.result)
|
|
|
|
%put %repeatTxt(#,15,s=$) HELLO SAS! %repeatTxt(#,15,s=$);
|
|
|
|
%put %intsList(42);
|
|
%put %letters(1:26:1);
|
|
|
|
%splitDSIntoBlocks(5, sashelp.class, classBlock)
|
|
|
|
%splitDSIntoParts(7, sashelp.cars, carsPart)
|
|
|
|
filename f temp;
|
|
%put %filePath(f);
|
|
|
|
%put %libPath(WORK);
|
|
|
|
libname NEW "%workPath()/new";
|
|
|
|
%put %translate(%str("A", "B", "C"),%str(%",),%str(%' ));
|
|
|
|
%put %tranwrd(Miss Joan Smith,Miss,Ms.);
|
|
|
|
%put %date() %time() %datetime();
|
|
|
|
%put %date(yymmddn10.) %time(time5.) %datetime(e8601dt.);
|
|
|
|
%put %monthShift(2023,1,-5);
|
|
|
|
%put #%expandDataSetsList(lib=sashelp,datasets=_all_)#;
|
|
```
|
|
and more.
|
|
|
|
SHA256 digest for the latest version of `BasePlus`: F*FB102C9B12E870666C15A651017D48E0141E47D64C11437350D0EC75A7E9E609
|
|
|
|
[**Documentation for BasePlus**](./baseplus.md "Documentation for BasePlus")
|
|
|
|
To work with a package use the [**SAS Packages Framework**](https://github.com/yabwon/SAS_PACKAGES/blob/main/README.md "SPFinit").
|