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:17]
t.zoltak [Funkcje weryfikujące związane z typem i możliwościami systemu]
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 271: Linia 278:
     * [assert_]is_windows();​     * [assert_]is_windows();​
 =====Inne funkcje===== =====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()**:​   * **use_first()**:​
Linia 279: Linia 283:
     * Uwagi:     * 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).       * **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()**: +  * **DIM()**: 
-    * Sprawdza, czy obiekt jest skalarem (tj. długości jeden). +    * Funkcja zwraca liczbę wymiarów lub długość (jeśli obiekt nie ma wymiarów). 
-  * Funkcje ​**[assert_]is_a[n]_[...]**: +  * **n_elements()**: 
-    * Funkcje testują, czy obiekt jest danego typu i **jednocześnie** jest skalarem ​(tj. długości jeden). +    * Funkcja zwraca liczbę „atomowych” elementów obiektu ​(npw przypadku macierzy - liczba komórek, w przypadku listy - długość wektora powstającego przez wywołanie na liście unlist())
-    * Funkcje '​is_a_[...]'​ zwracają, czy warunki są spełnione. +  * **coerce_to()**: 
-    * Funkcje '​assert_is_a_[...]'​ zwracają błędy, jeśli warunki nie są spełnione+    Funkcja przeprowadza rzutowanie typów ​(w sposób nieco bardziej bezpieczny niż funkcje rodziny as.[...]).
-    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====+
  
  
pakietassert.1435756642.txt.gz · ostatnio zmienione: 2015/07/01 15:17 przez t.zoltak