przejście do zawartości
Zespół Pomiaru Dydaktycznego
Narzędzia użytkownika
Zaloguj
Narzędzia witryny
Narzędzia
Pokaż stronę
Poprzednie wersje
Odnośniki
Menadżer multimediów
Zaloguj
Menadżer multimediów
Ślad:
pakietassert
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
======Przewodnik po funkcjach pakietu assertive====== =====Typy funkcji===== Większość funkcji ma nazwę postaci '//orzeczenie//_//dopełnienie//', gdzie //orzeczenie// ('is', 'assert_is', 'has', itp.) wskazuje, jakiego rodzaju operacja ma być wykonana, a //dopełnienie// wskazuje, na to, co jest poszukiwane, lub do czego przyrównywane (//podmiot// stanowią argumenty). Funkcje pakietu //assertive// można podzielić na kilka szerokich grup według dwóch różnych specyfikacji. Pierwszy podział (sposób działania) odnosi się do rodzaju //orzeczenia//, a drugi (dziedzinowy) odnosi się do rodzaju //dopełnienia//. ====Podział ze względu na sposób działania==== * Funkcje **is_[...]** i **are_[...]**: * Zwracają wartość logiczną weryfikacji, czy argument (lub argumenty) są typu (w bardzo szerokim rozumieniu tego słowa) wyznaczanym przez //dopełnienie// [...]. * Funkcje **has_[...]**: * Zwracają wartość logiczną weryfikacji, czy argument posiada własności wyznaczane przez //dopełnienie// [...]. * Funkcje **assert_is_[...]** i **assert_are_[...]**: * Stanowią nadbudowę na odpowiednimi funkcjami is_[...] i are_[...], polegającą na tym, że gdy weryfikacja warunku zwraca wartość //FALSE//, zwrócony zostaje błąd (w formie przyjaznej użytkownikowi). * Odnoszą się do weryfikacji dotyczących obiektu //jako całości//, a nie cech poszczególnych jego elementów. * Funkcje **assert_has_[...]**: * Stanowią nadbudowę na odpowiednimi funkcjami has_[...], polegającą na tym, że gdy weryfikacja warunku zwraca wartość //FALSE//, zwrócony zostaje błąd (w formie przyjaznej użytkownikowi). * Funkcje **assert_all_are_[...]**: * Stanowią nadbudowę na odpowiednimi funkcjami is_[...] i are_[...], polegającą na tym, że gdy weryfikacja warunku zwraca wartość //FALSE// dla chociaż jednego elementu wektora (będącego //podmiotem//), zwrócony zostaje błąd (w formie przyjaznej użytkownikowi). * Odnoszą się do weryfikacji dotyczących cech poszczególnych elementów obiektu (będącego //podmiotem//). * Funkcje **assert_any_are_[...]**: * Stanowią nadbudowę na odpowiednimi funkcjami is_[...] i are_[...], polegającą na tym, że jeśli weryfikacja warunku nie zwraca wartość //TRUE// dla chociaż jednego elementu wektora (będącego //podmiotem//), zwrócony zostaje błąd (w formie przyjaznej użytkownikowi). * Odnoszą się do weryfikacji dotyczących cech poszczególnych elementów obiektu (będącego //podmiotem//). ====Podział ze względu na dziedzinę stosowania==== * [[#Funkcje weryfikujące typy obiektów]]: * typy atomowe, * typy złożone, ale //podstawowe//, szeroko używane, * [[#funkcje weryfikujące typ i jednooelementowość]], * typy specjalistyczne i specyficzne podtypy. * [[#Funkcje weryfikujące własności obiektów]]. * [[#Funkcje weryfikujące wartości obiektów]]: * [[#wartości logiczne i braki danych]], * [[#wartości liczbowe, daty i zbiory]], * [[#ciągi znaków]] (w tym specyficzne). * [[#Funkcje weryfikujące związane z systemem plików]]. * [[#Funkcje weryfikujące związane z połączeniami ('connections')]]. * [[#Funkcje weryfikujące związane ze środowiskiem ('enviroment')]]. * [[#Funkcje weryfikujące związane z typem i możliwościami systemu]]. * [[#Inne funkcje]]. =====Funkcje weryfikujące typy obiektów===== ====Typy podstawowe (atomowe i złożone, ale powszechnie występujące)==== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_array | + | + | - | - | |_atomic | ::: | ::: | ::: | ::: | |_call | ::: | ::: | ::: | ::: | |_character | ::: | ::: | ::: | ::: | |_complex | ::: | ::: | ::: | ::: | |_data.frame | ::: | ::: | ::: | ::: | |_environment | ::: | ::: | ::: | ::: | |_expression | ::: | ::: | ::: | ::: | |_factor | ::: | ::: | ::: | ::: | |_function | ::: | ::: | ::: | ::: | |_integer | ::: | ::: | ::: | ::: | |_language | ::: | ::: | ::: | ::: | |_list | ::: | ::: | ::: | ::: | |_logical | ::: | ::: | ::: | ::: | |_matrix | ::: | ::: | ::: | ::: | |_name | ::: | ::: | ::: | ::: | |_numeric | ::: | ::: | ::: | ::: | |_primitive | ::: | ::: | ::: | ::: | |_raw | ::: | ::: | ::: | ::: | |_recursive | ::: | ::: | ::: | ::: | |_stepfun | ::: | ::: | ::: | ::: | |_symbol | ::: | ::: | ::: | ::: | |_table | ::: | ::: | ::: | ::: | |_vector | ::: | ::: | ::: | ::: | ====Funkcje weryfikujące typ i jednooelementowość==== 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 | |_if_codition | + | + | - | - | |_a_bool | ::: | ::: | ::: | ::: | |_an_empty_string | ::: | ::: | ::: | ::: | |_a_complex | ::: | ::: | ::: | ::: | |_an_integer | ::: | ::: | ::: | ::: | |_a_non_empty_string | ::: | ::: | ::: | ::: | |_a_number | ::: | ::: | ::: | ::: | |_a_raw | ::: | ::: | ::: | ::: | |_a_string | ::: | ::: | ::: | ::: | ====Typy specjalistyczne i specyficzne podtypy==== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_empty_model | + | + | - | - | |_leaf | ::: | ::: | ::: | ::: | |_mts | ::: | ::: | ::: | ::: | |_non_empty_model | ::: | ::: | ::: | ::: | |_qr | ::: | ::: | ::: | ::: | |_raster | ::: | ::: | ::: | ::: | |_symmetric_matrix | ::: | ::: | ::: | ::: | |_ts | ::: | ::: | ::: | ::: | |_tskernel | ::: | ::: | ::: | ::: | =====Funkcje weryfikujące własności obiektów===== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are ^ has ^ assert_has | |_all_attributes | - | - | - | - | + | - | |_all_of | - | + | - | - | - | - | |_any_attributes | - | - | - | - | + | + | |_any_of | - | + | - | - | - | - | |_arg | - | - | - | - | + | - | |_attributes | - | - | - | - | - | + | |_class[es] | + | - | + | + | - | - | |_colnames | - | - | - | - | + | + | |_cols | - | - | - | - | + | + | |_dimnames | - | - | - | - | + | + | |_dims | - | - | - | - | + | + | |_duplicates | - | - | - | - | + | + | |_elements | - | - | - | - | + | + | |_error_free | + | - | - | - | - | - | |_inherited_from | + | + | - | - | - | - | |_names | - | - | - | - | + | + | |_no_duplicates | - | - | - | - | + | + | |_of_dimension | + | + | - | - | - | - | |_of_length | + | + | - | - | - | - | |_ordered | + | + | - | - | - | - | |_relistable | + | + | - | - | - | - | |_rownames | - | - | - | - | + | + | |_rows | - | - | - | - | + | + | |_s4 | + | + | - | - | - | - | |_same_length | + | - | + | + | - | - | |_scalar | + | + | - | - | - | - | |_terms | - | - | - | - | + | + | |_unsorted | + | + | - | - | - | - | =====Funkcje weryfikujące wartości obiektów===== ====Wartości logiczne i braki danych==== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_empty | + | + | - | - | |_empty_character | + | - | - | - | |_false | + | - | + | + | |_identical | + | - | + | + | |_identical_to_false | + | + | - | - | |_identical_to_true | + | + | - | - | |_missing_or_empty_character | + | - | - | - | |_na | + | - | - | - | |_non_empty | + | + | - | - | |_not_missing_nor_empty_character[s] | + | - | + | + | |_not_na | + | - | + | + | |_not_null | + | + | - | - | |_null | + | + | - | - | |_strings_are_missing_or_empty | - | - | + | + | |_strings_are_not_missing_nor_empty | - | - | + | + | |_true | + | - | + | + | ====Wartości liczbowe, daty i zbiory==== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_in_future | + | - | + | + | |_in_past | ::: | ::: | ::: | ::: | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_divisible_by | + | - | + | + | |_even | ::: | ::: | ::: | ::: | |_finite | ::: | ::: | ::: | ::: | |_imaginary | ::: | ::: | ::: | ::: | |_in_closed_range | ::: | ::: | ::: | ::: | |_in_left_open_range | ::: | ::: | ::: | ::: | |_in_open_range | ::: | ::: | ::: | ::: | |_in_range | ::: | ::: | ::: | ::: | |_in_right_open_range | ::: | ::: | ::: | ::: | |_infinite | ::: | ::: | ::: | ::: | |_nan | ::: | ::: | ::: | ::: | |_negative | ::: | ::: | ::: | ::: | |_negative_infinity | ::: | ::: | ::: | ::: | |_non_negative | ::: | ::: | ::: | ::: | |_non_positive | ::: | ::: | ::: | ::: | |_not_nan | ::: | ::: | ::: | ::: | |_numbers_are_whole_numbers | - | - | + | + | |_odd | + | - | + | + | |_percentage[s] | ::: | ::: | ::: | ::: | |_positive | ::: | ::: | ::: | ::: | |_positive_infinity | ::: | ::: | ::: | ::: | |_proportion[s] | ::: | ::: | ::: | ::: | |_real | ::: | ::: | ::: | ::: | |_whole_number[s] | ::: | ::: | ::: | ::: | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_set_equal | + | + | - | - | |_subset | ::: | ::: | ::: | ::: | |_superset | ::: | ::: | ::: | ::: | ====Ciągi znaków==== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_date_string[s] | + | - | + | + | |_hex_colour[s] | ::: | ::: | ::: | ::: | |_ip_addresse[s] | ::: | ::: | ::: | ::: | |_numeric_string[s] | ::: | ::: | ::: | ::: | |_single_character[s] | ::: | ::: | ::: | ::: | |_valid_r_code | + | - | - | - | |_valid_variable_name[s] | + | - | + | + | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_cas_number[s] | + | - | + | + | |_credit_card_number[s] | ::: | ::: | ::: | ::: | |_email_addresse[s] | ::: | ::: | ::: | ::: | |_honorific | + | - | - | - | |_isbn_code[s] | + | - | + | + | |_isbn10_code | + | - | - | - | |_isbn13_code | ::: | ::: | ::: | ::: | |_uk_car_licence[s] | + | - | + | + | |_uk_national_insurance_number[s] | ::: | ::: | ::: | ::: | |_uk_postcode[s] | ::: | ::: | ::: | ::: | |_uk_telephone_number[s] | ::: | ::: | ::: | ::: | |_us_telephone_number[s] | ::: | ::: | ::: | ::: | |_us_zip_code[s] | ::: | ::: | ::: | ::: | =====Funkcje weryfikujące związane z systemem plików===== ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |_dir[s] | + | - | + | + | |_empty_file[s] | ::: | ::: | ::: | ::: | |_executable_file[s] | ::: | ::: | ::: | ::: | |_existing_file[s] | ::: | ::: | ::: | ::: | |_readable_file[s] | ::: | ::: | ::: | ::: | |_writable_file[s] | ::: | ::: | ::: | ::: | =====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')===== ^//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 **[assert_]r_has_[...]_capabilities**. * Funkcje **[assert_]r_can_[...]**. * Funkcje **assert_is_r_[...]**. * Funkcje **[assert_]is_[...]**: * [assert_]is_64_bit_os(); * [assert_]is_32_bit(); * [assert_]is_64_bit(); * [assert_]is_bsd(); * [assert_]is_linux(); * [assert_]is_mac(); * [assert_]is_solaris(); * [assert_]is_unix(); * [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.1435757235.txt.gz
· ostatnio zmienione: 2015/07/01 15:27 przez
t.zoltak
Narzędzia strony
Pokaż stronę
Poprzednie wersje
Odnośniki
Do góry