Narzędzia użytkownika

Narzędzia witryny


pakietassert

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pakietassert [2015/07/01 15:09]
t.zoltak [Ciągi znaków]
pakietassert [2015/07/01 15:33] (aktualna)
t.zoltak [Przewodnik po funkcjach pakietu assertive]
Linia 1: Linia 1:
 ======Przewodnik po funkcjach pakietu assertive====== ======Przewodnik po funkcjach pakietu assertive======
  
 +Warto zapoznać się z winietkami od pakietu, autorstwa Richarda Cottona:
 +
 +  * [[http://​cran.at.r-project.org/​web/​packages/​assertive/​vignettes/​introduction.html|Introduction]].
 +  * [[http://​cran.at.r-project.org/​web/​packages/​assertive/​vignettes/​checking_function_inputs.html|Checking function inputs]].
 +  * [[http://​cran.at.r-project.org/​web/​packages/​assertive/​vignettes/​checklists.html|Checklists of checks]]
 =====Typy funkcji===== =====Typy funkcji=====
  
Linia 76: Linia 81:
  
 Jeśli to czytasz, zapoznaj się z funkcją **is_if_conditon()**! Jeśli to czytasz, zapoznaj się z funkcją **is_if_conditon()**!
 +
 +**Uwaga:** Wszystkim opisanym poniżej funkcjom, z wyjątkiem [assert_]is_if_condition(),​ nie przeszkadza,​ jeśli obiekty zawierają pojedynczy brak danych (NA, lub wartości o podobnym znaczeniu: NaN, Inf, -Inf). Jeśli takiego przypadku nie dopuszczamy,​ należy go oddzielnie obsłużyć.
  
 ^//​dopełnienie// ​    ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | ^//​dopełnienie// ​    ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are |
Linia 223: Linia 230:
 |_writable_file[s] ​  | ::: | ::: | ::: | ::: | |_writable_file[s] ​  | ::: | ::: | ::: | ::: |
 =====Funkcje weryfikujące związane z połączeniami ('​connections'​)===== =====Funkcje weryfikujące związane z połączeniami ('​connections'​)=====
 +
 +^//​dopełnienie//​ ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are |
 +|_bzfile_connection ​    ​| ​ +  |  -  |  +  |  +  |
 +|_connection ​           | ::: | ::: | ::: | ::: |
 +|_fifo_connection ​      | ::: | ::: | ::: | ::: |
 +|_file_connection ​      | ::: | ::: | ::: | ::: |
 +|_gzfile_connection ​    | ::: | ::: | ::: | ::: |
 +|_incomplete_connection | ::: | ::: | ::: | ::: |
 +|_open_connection ​      | ::: | ::: | ::: | ::: |
 +|_pipe_connection ​      | ::: | ::: | ::: | ::: |
 +|_readable_connection ​  | ::: | ::: | ::: | ::: |
 +|_socket_connection ​    | ::: | ::: | ::: | ::: |
 +|_stderr ​               | ::: | ::: | ::: | ::: |
 +|_stdin ​                | ::: | ::: | ::: | ::: |
 +|_stdout ​               | ::: | ::: | ::: | ::: |
 +|_terminal_connection ​  | ::: | ::: | ::: | ::: |
 +|_text_connection ​      | ::: | ::: | ::: | ::: |
 +|_unz_connection ​       | ::: | ::: | ::: | ::: |
 +|_url_connection ​       | ::: | ::: | ::: | ::: |
 +|_writable_connection ​  | ::: | ::: | ::: | ::: |
 +|_xzfile_connection ​    | ::: | ::: | ::: | ::: |
 =====Funkcje weryfikujące związane ze środowiskiem ('​enviroment'​)===== =====Funkcje weryfikujące związane ze środowiskiem ('​enviroment'​)=====
 +
 +^//​dopełnienie//​ ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are |
 +|_batch_mode ​              ​| ​ +  |  +  |  -  |  -  |
 +|_binding_locked ​          | ::: | ::: | ::: | ::: |
 +|_comma_for_decimal_point ​ | ::: | ::: | ::: | ::: |
 +|_debugged ​                | ::: | ::: | ::: | ::: |
 +|_existing ​                ​| ​ +  |  -  |  +  |  +  |
 +|_interactive ​             |  +  |  +  |  -  |  -  |
 +|_loaded ​                  | ::: | ::: | ::: | ::: |
 +|_period_for_decimal_point | ::: | ::: | ::: | ::: |
 =====Funkcje weryfikujące związane z typem i możliwościami systemu===== =====Funkcje weryfikujące związane z typem i możliwościami systemu=====
-=====Inne funkcje===== 
-=====Argumenty,​ które powinny być jednoelementowe===== 
- 
-**Uwaga:** Wszystkim opisanym poniżej funkcjom nie przeszkadza,​ jeśli obiekty zawierają pojedynczy brak danych (NA, lub wartości o podobnym znaczeniu: NaN, Inf, -Inf). Jeśli takiego przypadku nie dopuszczamy,​ należy go oddzielnie obsłużyć. 
- 
-  * **use_first()**:​ 
-    * Funkcja zwraca pierwszy element obiektu, a jeśli miał ich więcej, dodatkowo pluje ostrzeżeniem. 
-    * Uwagi: 
-      * **Jeśli przekazywany obiekt jest listą**, to zostanie zwrócony jej pierwszy element, czym by nie był. Także o wyświetleniu lub nie ostrzeżenia decyduje długość samej listy (a nie struktura jej elementów). 
-  * **is_scalar()**:​ 
-    * Sprawdza, czy obiekt jest skalarem (tj. długości jeden). 
-  * Funkcje **[assert_]is_a[n]_[...]**:​ 
-    * Funkcje testują, czy obiekt jest danego typu i **jednocześnie** jest skalarem (tj. długości jeden). 
-    * Funkcje '​is_a_[...]'​ zwracają, czy warunki są spełnione. 
-    * Funkcje '​assert_is_a_[...]'​ zwracają błędy, jeśli warunki nie są spełnione. 
-    * Typy, które można testować obejmują: 
-      * [assert_]is_a_bool - typ //​logical//​. 
-      * [assert_]is_an_empty_string - pusty ciąg znaków (''​). 
-      * [assert_]is_a_complex - typ //complex// (np. //1i//). 
-      * [assert_]is_an_integer - typ //​integer//​. 
-      * [assert_]is_a_non_empty_string - niepusty ciąg znaków 
-      * [assert_]is_a_number - typ //numeric// (//​integer//​ lub //​double//​). 
-      * [assert_]is_a_raw - typ //raw// (takie dziwne coś, p. //?raw//). 
-      * [assert_]is_a_string - ciąg znaków. 
- 
-====Testowanie złożonych typów==== 
- 
-====Testowanie możliwości środowiska==== 
  
   * Funkcje **[assert_]r_has_[...]_capabilities**.   * Funkcje **[assert_]r_has_[...]_capabilities**.
Linia 267: Linia 277:
     * [assert_]is_unix();​     * [assert_]is_unix();​
     * [assert_]is_windows();​     * [assert_]is_windows();​
 +=====Inne funkcje=====
 +
 +  * **use_first()**:​
 +    * Funkcja zwraca pierwszy element obiektu, a jeśli miał ich więcej, dodatkowo pluje ostrzeżeniem.
 +    * Uwagi:
 +      * **Jeśli przekazywany obiekt jest listą**, to zostanie zwrócony jej pierwszy element, czym by nie był. Także o wyświetleniu lub nie ostrzeżenia decyduje długość samej listy (a nie struktura jej elementów).
 +  * **DIM()**:
 +    * Funkcja zwraca liczbę wymiarów lub długość (jeśli obiekt nie ma wymiarów).
 +  * **n_elements()**:​
 +    * Funkcja zwraca liczbę „atomowych” elementów obiektu (np. w przypadku macierzy - liczba komórek, w przypadku listy - długość wektora powstającego przez wywołanie na liście unlist()).
 +  * **coerce_to()**:​
 +    * Funkcja przeprowadza rzutowanie typów (w sposób nieco bardziej bezpieczny niż funkcje rodziny as.[...]).
 +
 +
pakietassert.1435756142.txt.gz · ostatnio zmienione: 2015/07/01 15:09 przez t.zoltak