! | 次の条件の意味を反転します。これは論理否定であり、「Not」と同様の意味を持ちます。 |
all | 行またはグループ内の行ですべての行が指定した条件を満たす場合、TRUEを返します。 |
any | 行またはグループ内の行で指定した条件を満たすものが一つでもある場合、TRUEを返します。 |
duplicated | 重複した値または行であるかどうかを論理値(TRUE、FALSE)で返します。 |
ifelse | 条件の結果に基づいて、異なる値を返します。 |
is.character | 指定されたオブジェクトがCharacter(文字列)型の場合はTRUEを返します。 |
is.double | 指定されたオブジェクトがDouble(不動小数点)型の場合はTRUEを返します。 |
is.factor | 指定されたオブジェクトがFactor(順序付きカテゴリー型)の場合はTRUEを返します。 |
is.list | 指定されたオブジェクトがList型の場合はTRUEを返します。 |
is.logical | 指定されたオブジェクトがLotical(論理値)型の場合はTRUEを返します。 |
is.matrix | 指定されたオブジェクトがMatrix型の場合はTRUEを返します。 |
is.na | 欠損値の場合にTRUEを返します。 |
is.null | nullの場合にTRUEを返します。 |
is.numeric | 指定されたオブジェクトがNumeric(数値)型の場合はTRUEを返します。 |
isTRUE | 指定された値がTRUEである場合にのみTRUEを返します。 |
which | 論理ベクトル内の値の位置を返します。 |
xor | 2つの値の排他的論理和のチェックを実行し、2つの値のうち1つだけがTRUEの場合のみTRUEを返します。 |
is.Date | 指定したオブジェクトが日付型の場合はTRUEを返します。 |
is.difftime | 指定したオブジェクトがdifftime型の場合はTRUEを返します。 |
is.duration | 指定したオブジェクトがduration型の場合はTRUEを返します。 |
is.POSIXct | 指定したオブジェクトがPOSIXct型の場合はTRUEを返します。 |
str_detect | 特定の文字列が含まれているかどうかに基づいて、TRUEまたはFALSEを返します。 |
if_else | 指定した条件を満たすかどうかに応じて、値を返します。 |
case_when | 複数の条件にもとづいて値を返します。これはSQLのCASE WHENに似ています。条件とそれに対応する値を指定するために両辺の式を使い、ELSE条件としてTRUEを使用することができます。詳しくは以下の例を参照してください。 |
coalesce | 欠損値を特定の値または他の列の同じ位置にある値に置き換えます。 |
na_if | 一致する値をNAに置き換えます。 |
near | 2つの数値ベクトルを比較します。浮動小数点数の2つのベクトルが(対で)等しいかどうかを比較する安全な方法です。許容誤差が組み込まれている点におい、== を使うよりも安全です。 |
recode_factor | 元の値を指定された値で置換し、順序付きカテゴリの列を作成します。数値の場合、値にバックティックを付けるか、その位置にもとづいて置き換えることができ、文字列は、その名称をもとに置き換えることができます。 |
parse_logical | データをLogical(論理値)型に変換します。 |
is.hms | 指定したオブジェクトがhms型の場合はTRUEを返します。 |
str_logical | カテゴリまたは数値型の列をロジカル型の列に変換します。引数の"true_value"がない場合、"yes", "true", "1"をTRUEとして扱い、"no", "false", "0"をFALSEとして扱います。 |
impute_na | impute_naでは、平均値や中央値、手動で指定した値、または線形回帰モデルによる予測値によって欠損値を埋めることができます。 |
get_mode | 最も頻度の多い値を返します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
summarize_row | 指定した集計関数を利用して、各行の列の値を集計 します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
confint_ratio | 指定したロジカル型のデータからTRUEの割合の信頼区間(信頼区間の半分の幅)を返します。 |
calc_confint_ratio | サンプルデータのサイズと標準偏差から、TRUEの割合の信頼区間(信頼区間の半分の幅)を返します。 |
abbreviate | 文字列をminlength文字に短縮し、一意にできるようにします。まず、文字列の先頭にある全てのスペースが削除されます。 その後、必要に応じて他のスペースが削除されます。次に、小文字の母音が (右から順に) 削除され、続いて小文字の子音が削除されます。最後に、省略形がminlengthよりも長い場合は、大文字が削除されます。 |
c | いくつかの引数を組み合わせるための一般的な関数です。 |
iconv | 指定されたテキストをあるエンコーディングから別のエンコーディングに変換します。 |
nchar | 指定された値の文字数またはサイズを返します。 |
str_c | 複数のテキストや列をくっつけることができます。 |
str_conv | テキストを指定されたエンコーディング(例:UTF-8)に変換します。 |
str_count | テキストデータの文字数または単語数を返します。一致したパターンまたはテキストのみをカウントするように設定できます。 |
str_detect | 特定の文字列が含まれているかどうかに基づいて、TRUEまたはFALSEを返します。 |
str_dup | 文字列の値を繰り返します。 |
str_extract | 指定した文字列または正規表現に一致する文字列を抽出します。 |
str_extract_all | 指定した文字列または正規表現に一致する文字列をすべて抽出します。 |
str_length | テキストデータの文字数を返します。 |
str_pad | 指定した文字数に満たない空白箇所をスペース、または特定の文字で埋めることができます。 |
str_replace | 指定した文字列または正規表現に一致する文字列を置き換えます。 |
str_replace_all | 指定した文字列または正規表現に一致する文字列をすべて置き換えます。 |
str_replace_na | 欠損値(NA)を特定の文字列に置換します。 |
str_split | 指定した区切り文字によって、複数のテキストに分割します。値はリストとして返されるため、unnest() 関数で新しく作成された列のネストを解除する必要があります。 |
str_sub | 位置に基づいて文字列を抽出します。 |
str_to_lower | テキストを小文字に変換します。 |
str_to_title | テキストをタイトルケースに変換します。 |
str_to_upper | テキストを大文字に変換します。 |
str_trim | テキストの中にある空白を取り除きます。 |
word | テキストデータの最初、最後、またはN番目の単語を抽出します。 |
extract_numeric | 指定されたテキストから数字のみを抽出します。数値以外のフォーマットがある文字列(例: $1,200.34, -12%, X1)に便利です。 |
url_parameters | url からデコードされたクエリのパラメーターを返します。 |
coalesce | 欠損値を特定の値または他の列の同じ位置にある値に置き換えます。 |
na_if | 一致する値をNAに置き換えます。 |
recode | 元の値を指定された値で置換します。数値の場合は数値にバックティックをつけるか、その位置に基づいて、置換ができます。文字列の場合は、その名前を置き換えることができます。 |
parse_number | 文字列などを除いた上で数値のみを抽出し、Numeric(数値)型に変換します。 |
str_trunc | テキストの文字数が指定された数になるように、テキストを切り捨てます。 |
str_remove | 指定した文字列または正規表現に一致する文字列を取り除きます。 |
str_remove_all | 指定した文字列または正規表現に一致する文字列をすべて取り除きます。 |
str_remove_word | 文章から単語を取り除きます。 |
str_replace_word | 文章にある単語を指定して単語に置換します。 |
str_remove_inside | 指定した文字の範囲内に含まれる文字を取り除きます。 |
str_replace_inside | 指定した文字の範囲内に含まれる文字を置換します。 |
str_remove_url | 文字列の中にあるURLを取り除きます。 |
str_replace_url | 文字列の中のURLを指定したテキストに置換します。 |
str_extract_url | 文字列の中からURLを抽出します。 |
str_remove_emoji | 文字列の中から絵文字を取り除きます。 |
anonymize | ハッシュ・アルゴリズムによって値を匿名化します。 |
str_clean | エスケープ文字(例: \n, \t)、余分な空白、余分なピリオド、先頭と末尾のスペースを削除して、テキストをきれいにします。 |
str_count_all | 文字列のパターンを数えます。 |
str_normalize | 全角のアルファベット、数字、特殊文字を通常のアルファベット、数字、特殊文字に置き換えます。また半角カナ文字を全角カナ文字に置き換え、その他の正規化規則を適用してテキストを正規化します。これはUnicode 正規化形の規則に従います。なお、この関数はstringi::stri_trans_nfkc 関数のラッパー関数です。 |
str_extract_inside | 指定した記号内のテキストを抽出する。 |
str_logical | カテゴリまたは数値型の列をロジカル型の列に変換します。引数の"true_value"がない場合、"yes", "true", "1"をTRUEとして扱い、"no", "false", "0"をFALSEとして扱います。 |
get_stopwords | "a"、"the"、"and"などのストップワードを返します。 |
word_to_sentiment | 単語に対して、肯定的または否定的なセンチメントの種類を返します。 |
get_sentiment | 文章からセンチメントスコアを返します。正のスコアは肯定的な文章を表し、負のスコアはその反対を表します。0は「中立」を意味します。 |
stem_word | 綴りが若干異なる単語を同じ単語として認識できるように整えます。 |
is_stopword | 文字列に辞書で定義されたストップワードのリストに含まれる単語がある場合、TRUEを返します。 |
is_empty | 文字列が空文字または NAのときにTRUEを返します。 |
is_alphabet | 文字列がアルファベットのみを含む場合に TRUE を返します。 |
ip_to_country | IPアドレスから国名を返します。 |
url_domain | url からドメイン (例: "exploratory.io")を返します。 |
url_fragment | url からフラグメントを返します。 |
url_path | urlからパスを返します。 |
url_port | url からポートを返します。 |
url_scheme | urlからスキーム(例:"http"、"https")を返します。 |
url_suffix | urlから接尾辞(例:"com"、"org")を返します。 |
url_subdomain | urlからサブドメイン (例 "www", "blog") を返します。 |
url_tld | url からトップレベルドメイン (例 "com"、"co") を返します。 |
url_param | url からデコードされたクエリパラメーターを返します。 |
countrycode | 国名や国名コードを他のコードや名前(国名、大陸名など)に変換します。 |
statecode | 米国の州の情報を持つ列から、米国の州名、略称、数値コード、区分、地域のいずれかを返します。州の情報は、米国の州名、略語 (FIPS / ANSI コード)、数値コード (FIPS) のいずれかであり、任意の組み合わせが可能です。 |
countycode | 米国の州および郡名にをもとに米国の郡コード(FIPS - 連邦情報処理標準)を生成します。 |
impute_na | impute_naでは、平均値や中央値、手動で指定した値、または線形回帰モデルによる予測値によって欠損値を埋めることができます。 |
get_mode | 最も頻度の多い値を返します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
summarize_row | 指定した集計関数を利用して、各行の列の値を集計 します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
abs | 数値を絶対値として返す。 |
acos | 逆余弦の値をラジアン単位で返します。 |
acosh | 逆双曲線余弦の数値を返します。 |
asin | 逆正弦の値をラジアン単位で返します。 |
asinh | 逆双曲線正弦の数値を返します。 |
atan | 逆正接の値をラジアン単位で返します。 |
atan2 | x軸と原点(0,0)から指定された座標ペア (`x`,`y`) までの線分との間の角度をラジアン単位で返します。 |
atanh | 逆双曲線正接の数値を返します。 |
ceiling | 数値を整数または指定した小数点で切り上げる。 |
cos | 指定された角度のコサインをラジアン単位で返します。 |
cosh | 任意の実数の双曲線余弦を返します。 |
cospi | cos(pi * |
cut | 数値を指定した数に分割し、その間隔の値(下限,上限)を返します。 |
exp | ネイピア数(オイラー数)のe(~2.718)の累乗を返します。 |
floor | 数値を整数または指定した小数点で切り捨てる。 |
log | 対数を返します。デフォルトは自然対数での値を返します。 |
log10 | 常用対数(10を底とする対数)を返します。 |
log1p | log(1+数値) の値を返します。数値がゼロに近い場合でも、正確な値が計算できます。 |
log2 | 二進対数(2を底とする対数)を返します。 |
pmax | 並列する値のうち、どちらかの最大値を返します。 |
pmin | 並列する値のうち、どちらかの最小値を返します。 |
round | 数値を整数または指定した小数点で四捨五入する。 |
sign | 値が正、0、または負であるかどうかに応じて、それぞれ1、0、-1を返します。 |
signif | 値を指定した有効桁数に四捨五入します。 |
sin | 指定された角度のサインをラジアン単位で返します。 |
sinh | 任意の実数の双曲線正弦を返します。 |
sinpi | sin(pi * |
sqrt | 値の平方根を返します。 |
tan | 指定された角度のタンジェントをラジアン単位で返します。 |
tanh | 任意の実数の双曲線正接を返します。 |
tanpi | tan(pi * |
trunc | 数値の小数点以下を切り捨てます。 |
coalesce | 欠損値を特定の値または他の列の同じ位置にある値に置き換えます。 |
near | 2つの数値ベクトルを比較します。浮動小数点数の2つのベクトルが(対で)等しいかどうかを比較する安全な方法です。許容誤差が組み込まれている点におい、== を使うよりも安全です。 |
recode | 元の値を指定された値で置換します。数値の場合は数値にバックティックをつけるか、その位置に基づいて、置換ができます。文字列の場合は、その名前を置き換えることができます。 |
normalize | 列の数値をセンタリングまたはスケーリングします。 |
impute_na | impute_naでは、平均値や中央値、手動で指定した値、または線形回帰モデルによる予測値によって欠損値を埋めることができます。 |
detect_outlier | 外れ値を検出し、'upper'(上位)ラベルと'lower'(下位)ラベルを返します。 |
get_mode | 最も頻度の多い値を返します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
summarize_row | 指定した集計関数を利用して、各行の列の値を集計 します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
confint_mean | 与えられた数値データから、平均の信頼区間(信頼区間の半分の幅)を返します。 |
calc_confint_mean | サンプルデータのサイズと標準偏差から、平均の信頼区間(信頼区間の半分の幅)を返します。 |
cumsum_decayed | 減衰効果の累積和を計算します。第二引数のRが1の場合は、cumsum関数と同じ結果を得られます。 |
ts_lag | 特定の値の指定した前期間の値を返します。 |
ts_diff | 特定の値の指定した前期間との差を計算します。 |
ts_diff_ratio | 特定の値の指定した前期間との差の割合を計算します。 |
likert_sigma | 1="強くそう思わない"、2="そう思わない"、3="どちらでもない"、4="そう思う"、5="強くそう思う "のようなアンケートの回答データの列からリッカートのシグマ値を返します。 |
logistic | 数値列に対してロジスティック関数を適用した結果を返すことができます。 |
all | 行またはグループ内の行ですべての行が指定した条件を満たす場合、TRUEを返します。 |
any | 行またはグループ内の行で指定した条件を満たすものが一つでもある場合、TRUEを返します。 |
length | 値の長さを返します。 |
max | すべての値の最大値を返します。 |
mean | すべての値の平均値を返します。 |
min | すべての値の最小値を返します。 |
prod | 指定されたデータの一連の数値を乗算して積値を返します。 |
sum | すべての値の合計値を返します。 |
unique | 一意な値の数を返します。 |
n | 各グループの行数を返します。 |
n_distinct | 一意な値の数を返します。 |
nth | n番目の値を返します。 |
IQR | 四分位範囲を計算します。 |
mad | 中央絶対偏差を計算します。 |
median | 中央値を計算します。 |
quantile | 与えられた確率に対応する標本の分位数を計算します。最小値は確率0に対応し,最大値は確率1に対応します。 |
sd | 標準偏差を計算します。 |
var | 分散を計算します。 |
get_mode | 最も頻度の多い値を返します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
sum_if | 指定した条件を満たす合計値を返します。 |
sum_if_ratio | 指定した条件を満たす合計値の、すべての値の合計値に対する比率を返します。 |
count_if | 指定した条件を満たす行の数を集計します。 |
count_if_ratio | 総行数に対する指定した条件を満たす行の数の比率を集計します。 |
count_unique_if | 指定した条件を満たす行に由来する列の一意な値の数を数えます。 |
count_unique_if_ratio | 指定した条件を満たす行から得られる一意の値の数と、一意の値の数の比率を返します。 |
mean_if | 指定した条件を満たす平均値を返します。 |
average_if | 指定した条件を満たす平均値を返します。 average_if関数は mean_if のエイリアスです。 |
median_if | 指定した条件を満たす中央値を返します。 |
max_if | 指定した条件を満たす数値列の最大値を返します。 |
min_if | 指定した条件を満たす数値列の最小値を返します。 |
count_rows | グループごとの行の数を集計します。 |
count_unique | 一意な値の数を返します。 |
as.character | データタイプを文字列型(Character)に変換します。 |
as.Date | データタイプを日付型(Date)に変換します。日付型のデータには時間の情報は含まれません。デフォルトのフォーマットは「2020-01-01」と表現するISO8601の国際規格に従います。 |
as.double | データタイプを不動小数点型(double)に変換します。数値型(Numeric)と同じ挙動になります。 |
as.factor | 指定した列をFactor型に変換します。 |
as.integer | データタイプを整数型(integer)に変換します。 |
as.logical | データタイプをロジカル型(Logical)に変換します。 |
as.numeric | データタイプを数値型(Numeric)に変換します。 |
as.POSIXct | データタイプを日付・時間型(POSIXct)に変換します。 |
factor | レベル(順序)を指定して、列をFactor型に変換します。 |
parse_date_time | データを日付時間型に変換します。 |
parse_number | 文字列などを除いた上で数値のみを抽出し、Numeric(数値)型に変換します。 |
parse_double | データをDouble(倍精度浮動小数点数)型に変換します。 |
parse_euro_double | データをDouble(倍精度浮動小数点数)型に変換します。 |
parse_integer | データをInteger(整数)型に変換します。 |
parse_time | データをTime(時間)型に変換します。 |
parse_character | データをCharacter(文字列)型に変換します。 |
parse_factor | データをFactor(順序付きカテゴリー)型に変換します。 |
parse_logical | データをLogical(論理値)型に変換します。 |
as_date | POSIXct型の列をDate型に変換できます。 |
as_datetime | データをPOSIXct型に変換します。 |
as.hms | 指定されたデータをhms型のデータに変換します。Hms,difftimeの値を計算で使う際には秒単位で処理されます。 |
excel_numeric_to_date | Excelの日付の数値(例: 42370)を日付型(例: 2016-01-01)に変換します。 |
excel_numeric_to_datetime | Excelで数値になっている日付/時刻の値をPOSIXct型の値に変換します。 |
unixtime_to_datetime | unix時間の数値をPOSIXctに変換します。 |
chartr | oldで指定された各文字を、newで指定された対応する文字に変換します。 |
list | リストを作成します。 |
rep | Repeats given numbers. |
rev | Reverses the entries in a given data. |
desc | Change the sorting order to a descending order. e.g. 9 to 1 instead of 1 to 9, z to a instead of a to z. |
cummax | 累積最大値を返します。 |
cummin | 累積最小値を返します。 |
cumprod | 累積積を返します。 |
cumsum | 累積合計値を返します。 |
cumall | 現在の位置までのすべての値がTRUE のときにTRUE を返します。 |
cumany | 現在の位置までの値のいずれかが TRUE ならば TRUE を返します。 |
cume_dist | その値の順位以下の全値の割合である累積分布を返します。欠測値の場合は、欠損値を返します。 |
cummean | 累積平均を返します。 |
dense_rank | 隙間のない順位を返します。 欠損値の場合は、欠損値がそのまま残ります。 |
first | 最初の値を返します。 |
lag | 注目している値より前の値を返します。 |
last | 最後の値を返します。 |
lead | 注目している値よりも後の値を返します。 |
min_rank | 隙間のある順位を返します。同じ順位のときには、最小の順位を返します。 欠損値の場合は、欠損値がそのまま残ります。 |
ntile | 列の値をもとに n 個に分割します。 欠損値はそのまま残されます。 |
percent_rank | 0から1間で順位比率を返します。 欠損値の場合は、欠損値がそのまま残ります。 |
row_number | 行番号を返します。 |
roll_max | 移動計算により、指定されたウィンドウサイズ間の最大値を返します。 |
roll_mean | 移動計算により、指定されたウィンドウサイズ間の平均値を返します。 |
roll_median | 移動計算により、指定されたウィンドウサイズ間の中央値を返します。 |
roll_min | 移動計算により、指定されたウィンドウサイズ間の最小値を返します。 |
roll_prod | 移動計算により、指定されたウィンドウサイズ間の積値を返します。 |
roll_sd | 移動計算により、指定されたウィンドウサイズ間の標準偏差を返します。 |
roll_sum | 移動計算により、指定されたウィンドウサイズ間の合計値を返します。 |
roll_var | 移動計算により、指定されたウィンドウサイズ間の分散を返します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
difftime | 指定された2つの日付・時間の差を計算します。 |
months | 計算に使用できるように、数値を月の単位に変換します。 |
ceiling_date | 日付・時間を、指定した単位に最も近い日付、または時間に切り上げます。 |
date_decimal | 年の分数である数値データを日付データに変換します。 |
day | 日付型や日付時間型の値から日の情報を抽出します。 |
days | 計算に使用できるように、数値を日の単位に変換します。 |
decimal_date | 日付を年の分数に計算し、日付データを数値データに変換します。 |
dmy | 日、月、年の順番の文字列または数値データを日付型に変換します。 |
dmy_h | 日、月、年、時の順番の文字列のデータを日付時間型に変換します。 |
dmy_hm | 日、月、年、時、分の順番の文字列のデータを日付時間型に変換します。 |
dmy_hms | 日、月、年、時、分、秒の順番の文字列のデータを日付時間型に変換します。 |
duration | 数値と指定した単位をもとに、秒単位に換算した値を求められます。 |
dym | 日、年、月の順番の文字列または数値データを日付型に変換します。 |
floor_date | 日付・時間を、指定した単位に最も近い日付、または時間に切り捨てます。 |
force_tz | 指定したタイムゾーンに修正します。 |
here | 設定されているローカルのタイムゾーンの現在時刻を取得します。 |
hm | 時と分のデータを期間のデータ型(Period)に変換します。 |
hms | hms型のデータを作成できます。Hms,difftimeの値を計算で使う際には秒単位で処理されます。 |
hour | 日付型や日付時間型の値から時間の情報を抽出します。 |
hours | 計算に使用できるように、数値を時間の単位に変換します。 |
interval | 2つの日付間の間隔を秒単位で返します。この結果を使用して、日、週などの特定の単位で除算するか、as.numeric()で数値型に変換することで期間を取得できます。 |
isoweek | 年の週番号を抽出します。週の開始曜日は月曜日になっています。 |
mday | 日付列から月の日(1-31)を抽出します。 |
mdy | 月、日、年の順番の文字列または数値データを日付型に変換します。 |
mdy_h | 月、日、年、時の順番の文字列のデータを日付時間型に変換します。 |
mdy_hm | 月、日、年、時、分の順番の文字列のデータを日付時間型に変換します。 |
mdy_hms | 月、日、年、時、分、秒の順番の文字列のデータを日付時間型に変換します。 |
milliseconds | 数値をミリ秒に変換してPeriod型として値を返します。 |
minute | 日付型や日付時間型の値から分の情報を抽出します。 |
minutes | 計算に使用できるように、数値を分の単位に変換します。 |
month | 日付型や日付時間型の値から月の情報を抽出します。 |
ms | 分と秒のデータを期間のデータ型(Period)に変換します。 |
myd | 月、年、日の順番の文字列または数値データを日付型に変換します。 |
now | 日付を含む現在時刻を返します。似た関数に'today()'があり、today関数は今日の日付のみを返します。 |
parse_date_time | データを日付時間型に変換します。 |
qday | 日付列から四半期の最初の日からの日数(1-92)を抽出します。 |
quarter | 日付型や日付時間型の値から四半期の情報を抽出します。 |
rollback | 日付データを前月の末日、またはその月の最初の日に丸め処理します。 |
round_date | 日付・時間を、指定した単位に最も近い日付、または時間に丸めます。 |
second | 日付型や日付時間型の値から秒の情報を抽出します。 |
seconds | 計算に使用できるように、数値を秒の単位に変換します。 |
time_length | 2つの日付間の正確な期間を計算して数値として値を返します。 |
today | 今日の日付を返します。似た関数に'now()'があり、now関数は現在時刻含む今日の日付を返します。 |
wday | 日付列から曜日(1-7)を数値(例: 月曜日は1)、または文字列(例: 日曜日)として返します。文字列はショート(例: 日)、またはロング(例: 日曜日)として返すことができます。 |
week | 日付型や日付時間型の値から1年の週番号を抽出します。第1週の1日目は、曜日に関係なく、常に1月1日から始まります。 |
weeks | 計算に使用できるように、数値を週の単位に変換します。 |
with_tz | 指定したタイムゾーンでの日付・時間を返します。 |
yday | 日付列から年の日(1-366)を抽出します。 |
ydm | 年、日、月の順番の文字列または数値データを日付型に変換します。 |
ydm_h | 年、日、月、時の順番の文字列のデータを日付時間型に変換します。 |
ydm_hm | 年、日、月、時、分の順番の文字列のデータを日付時間型に変換します。 |
ydm_hms | 年、日、月、時、分、秒の順番の文字列のデータを日付時間型に変換します。 |
year | 日付型や日付時間型の値から年の情報を抽出します。 |
years | 計算に使用できるように、数値を年の単位に変換します。 |
ymd | 年、月、日の順番の文字列または数値データを日付型に変換します。 |
ymd_h | 年、月、日、時の順番の文字列のデータを日付時間型に変換します。 |
ymd_hm | 年、月、日、時、分の順番の文字列のデータを日付時間型に変換します。 |
ymd_hms | 年、月、日、時、分、秒の順番の文字列のデータを日付時間型に変換します。 |
coalesce | 欠損値を特定の値または他の列の同じ位置にある値に置き換えます。 |
recode | 元の値を指定された値で置換します。数値の場合は数値にバックティックをつけるか、その位置に基づいて、置換ができます。文字列の場合は、その名前を置き換えることができます。 |
parse_time | データをTime(時間)型に変換します。 |
ym | 年、月の順番の文字列または数値データを日付型に変換します。 |
my | 月、年の順番の文字列または数値データを日付型に変換します。 |
yq | 年と四半期の文字列データを日付型に変換します。 |
epiweek | 年の週番号を抽出します。週の開始曜日は日曜日になっています。 |
as_date | POSIXct型の列をDate型に変換できます。 |
as.hms | 指定されたデータをhms型のデータに変換します。Hms,difftimeの値を計算で使う際には秒単位で処理されます。 |
impute_na | impute_naでは、平均値や中央値、手動で指定した値、または線形回帰モデルによる予測値によって欠損値を埋めることができます。 |
get_mode | 最も頻度の多い値を返します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
summarize_row | 指定した集計関数を利用して、各行の列の値を集計 します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
weekend | 指定した日付列の値をもとに、平日か週末かのラベルをつけます。 |
is_japanese_holiday | is_jholiday関数のエイリアスです。指定した日付が日本の祝日の場合、TRUEを返します。 |
get_week_of_month | 月の週を抽出します。例えば、指定した日付が月の第1週であれば `1` を返します。 |
years_between | 2つの日付間の期間を年数で計算します。 |
months_between | 2つの日付間の期間を月数で計算します。 |
weeks_between | 2つの日付間の期間を週数で計算します。 |
days_between | 2つの日付間の期間を日数で計算します。 |
hours_between | 2つの日付間の期間を時間で計算します。 |
minutes_between | 2つの日付間の期間を分で計算します。 |
seconds_between | 2つの日付間の期間を秒で計算します。 |
last_date | 指定した単位(月など)における、最後の日付を返します。 |
ts_lag | 特定の値の指定した前期間の値を返します。 |
ts_diff | 特定の値の指定した前期間との差を計算します。 |
ts_diff_ratio | 特定の値の指定した前期間との差の割合を計算します。 |
is_jholiday | 指定された日付が日本の祝日だった場合にTRUEを返します。 |
intersect | Keep the rows that appear in all of the given data frames. |
setdiff | Keep the rows that appear in the first data frame but not the other data frames. |
union | Keep the rows that appear in one of the given data frames. |
anti_join | Return all rows from the current data frame where there are not matching values in the target, keeping just columns from the current. |
arrange | Sort rows by given column(s). |
bind_cols | Bind multiple data frames by column. |
bind_rows | Bind multiple data frames by row. |
distinct | Select distinct/unique rows. Only the first row will be preserved. Set .keep_all argument to TRUE to keep all the original columns. |
filter | Select rows with conditions. |
full_join | Return all rows and all columns from both the current data frame and the target data frame. |
group_by | Converts the data frame into a grouped data frame where the following operations will be performed based on the groups. Grouping should be done before you want to aggregate values. |
inner_join | Return all rows from the current data frame where there are matching values in the current, and all columns from the current and the target. |
left_join | Return all rows from the current data frame, and all columns from the current and the target. Rows in the current with no match in the target will have NA values in the new columns. If there are multiple matches between the current and the target, all combinations of the matches are returned. |
mutate | Mutate creates new column(s) with given expressions and preserves existing |
rename | Rename existing column names. |
right_join | Return all rows from the target data frame, and all columns from the current and the target |
sample_frac | Sample n fraction of rows from the data frame. |
sample_n | Sample n rows from the data frame. |
select | Select column(s) by column names. |
semi_join | Return all rows from the current data frame where there are matching values in the target data frame, keeping just columns from the current. |
slice | Select rows by positions. This is not supported for relational databases, in which case you should use filter() with row_number() function. |
summarize | Summarize a column values to a single value by using aggregate functions. Make sure you have grouped the data frame already using group_by() already. |
top_n | Select the top n entries based on a given measure in each group. |
transmute | Transmute adds new columns and drops existing columns. |
ungroup | Ungroup existing grouping |
predict | Returns data augmented with fitted values and residuals. |
complete | 欠損しているデータの組み合わせを追加したデータフレームを返します。 |
expand | Expand a data frame by adding all the combination of given columns. |
fill | Fills missing values in using the previous entry. This is convenient especially when values are not presented in some cells to avoid duplicated entries. |
gather | Takes multiple columns and collapses into key-value pairs, duplicating all other columns as needed. |
nest | Nest a set of columns together as a list column. |
separate | Separates a column with delimited values into multiple columns. |
spread | Spread a key-value pair across multiple columns. Missing values will be replaced with NA. |
unite | Unite multiple columns together into one column with given uniting characters. It will concatenate values by “\_" and remove the original column by default. Multiple columns specified in the list can be combined together at once. |
unnest | Unnest a list column or a list of data frames by making each element of the list to be presented in its own row. |
select_if | Select column(s) with a predicate (conditional) function. |
mutate_all | Apply functions to all the columns. |
mutate_at | Apply functions to specified columns. |
mutate_if | Apply functions to only the columns that match with a given condition. |
summarize_all | Apply functions to all the columns. |
summarize_at | Apply functions to specified columns. |
summarize_if | Apply functions to only the columns that match with a given condition. |
separate_rows | Separates a column with delimited values into multiple rows. |
drop_na | Drop rows that have NA value. |
type_convert | Heuristically guess the data type for each column by reading the first 1000 rows, parse the data, and set appropriate data types for all the columns of the data frame. |
model_info | Returns a summary information of a given model in a tidy (normalized data frame) format. |
remove_empty_rows | Remove rows whose column values are all NAs. |
remove_empty_cols | Remove columns whose values are all NAs. |
clean_names | Make column names clean by using only _ character, lowercase letters, and numbers. |
get_dupes | Get rows that are duplicated. |
convert_to_NA | Convert specific values to NA. |
tabyl | Create frequency table. |
do_svd.kv | Calculates coordinations by reducing dimensionality using SVD (Singular Value Decomposition). |
do_svd | Calculates coordinations by reducing dimensionality using SVD (Singular Value Decomposition). |
build_lm | Builds a linear regression model (lm) and store it in a data frame. |
build_lr | Builds logistic regression model and store it in a data frame. |
build_glm | Builds generalized linear models (glm) and store it in a data frame. |
build_multinom | Builds multinomial logistic regression model and store it in a data frame. |
prediction | Returns a data frame with regression information about a model. |
prediction_binary | Returns a data frame with binary classification information about a model. |
prediction_coxph | Returns a data frame with predicted values of Cox Proportional Hazard Model. |
model_coef | Returns a data frame with 'Parameter Estimates (Coefficients)' information about a model including the below.* term - Term in lm that is estimated.* estimate - Estimated coefficients. The larger the number, the more positive effect the variable has.* std_error - Standard Error. How much prediction error there is in the variable.* t_ratio - estimate / std_error. This value in t distribution is p_value.* p_value - The probability that the variable is **not** effective.* conf_low - The lower bound of confidence interval.* conf_high - The upper bound of confidence interval. |
model_stats | Returns a data frame with 'Summary of Fit' information about a model including the below.* r_square - R Square.* r_square_adj - Adjusted R Square.* root_mean_square_error - Root mean square error.* f_ratio - F ratio.* p_value - P value.* df - Degree of freedom.* null_deviance - Null deviance.* df_for_null_model - Degree of freedom for null model.* log_likelihood - Log likelifood.* deviance - Deviance.* AIC - Akaike's information criterion.* BIC - Bayesian information criterion.* deviance - Deviance.* residual_df - Residual degree of freedom. |
model_anova | Returns a data frame with anova test information about a model including the below.* df - Degree of freedom.* sum_of_squares* mean_square* f_ratio* p_value* deviance* residual_df* residual_deviance |
evaluate_regression | Returns a data frame with evaluation score of regression including the below.* r_squared* explained_variance* mean_square_error* misclassification_error* root_mean_square_error* mean_absolute_error* mean_absolute_percentage_error |
evaluate_binary | Returns a data frame with evaluation score of binary classification including the below.* AUC* f_score* accuracy* misclassification_rate* precision* recall* specificity* true_positive - Number of positive predictions that actually are positive.* false_positive - Number of positive predictions that actually are negative.* true_negative - Number of negative predictions that actually are negative.* false_negative - Number of negative predictions that actually are positive.* test_size - The number of tested data.* threshold - threshold value for prediction. |
evaluate_multi | Returns a data frame with evaluation score of multi classification including the below.* micro_f_score* macro_f_score* accuracy* misclassification_rate |
do_roc | Returns coordinates of roc curve. |
build_kmeans.cols | Builds a clustering model (k-means) from variable columns and returns the summary of the model or the augmented data depending on the parameter value. |
build_kmeans.kv | Builds a clustering model (k-means) from key-value columns and store the model into a generated data frame or augment the original data with the clustered ID. |
build_kmeans | Builds a clustering model (k-means). Stores the model into a generated data frame or the augmented data depending on the parameter value. |
do_t.test | Execute t-test, which checks differences of means of variables. |
do_var.test | Execute F-test, which checks the differences of variances between groups. |
do_chisq.test | Execute chi-squared contingency table tests and goodness-of-fit tests. |
do_apriori | Find rules of what tend to occur at the same time from transaction data. |
do_anomaly_detection | Detect anomaly in time series data frame. |
do_prophet | Add forecast data to time series data frame. |
do_market_impact | Estimate impact of an event (advertisement, etc.) on a market, by using other markets to form a synthetic control. |
row_as_header | Use a row as column names. |
pivot | Pivot columns into rows and columns. Values are count of pairs of rows and columns or aggregation of another column. |
do_cor.cols | Calculates correlations for all the pairs of the variables (columns). |
do_cor.kv | Calculates correlations for all the pairs of subject columns. |
do_cor | Calculates correlations for all the pairs of the variables or subjects. |
do_dist.kv | Calculate the distances between each of the pairs. |
do_dist.cols | Calculate distances of each of the pairs. |
do_dist | Calculate distances of each of the pairs of the variables or subjects. |
do_cmdscale | Execute multidimensional scaling (MDS). Calculate approximated coordinations from distances of entity pairs. |
build_model | Create data frame with models from input data frame by model function and arguments. |
one_hot | One-hot encodes a categorical column, producing separate columns for each categorical values, each of which has values of 1 or 0 that tells whether a row has the value the column represents. |
sample_rows | Sample n rows from the data frame. This is same as sample_n except for it handles the case where the number of rows in the data is fewer than the specified n without throwing error. |
levels | 指定されたFactor型のレベルを返します。 |
coalesce | 欠損値を特定の値または他の列の同じ位置にある値に置き換えます。 |
recode | 元の値を指定された値で置換します。数値の場合は数値にバックティックをつけるか、その位置に基づいて、置換ができます。文字列の場合は、その名前を置き換えることができます。 |
as_factor | 指定した列を順序付きカテゴリーの列に変換します。標準搭載のbase関数のas.factor との違いは、出現する順序でレベルを作成する点です。またすべてのプラットフォームで同じ挙動です。 (base関数はロケールでソートするため、環境に応じて結果が変わる可能性があります) |
fct_anon | 順序付きカテゴリーのレベルを匿名化し、任意の数値に置き換えます。値もレベルの順序も保持されません。 |
fct_expand | ファクター型の列にレベルを追加します。 |
fct_drop | ファクター型の列から不要なレベルを削除します。 |
fct_explicit_na | 欠損値にレベルが与えられ、欠損値がカテゴリーとして確実にチャートで表示されるようになります。 |
fct_lump | データタイプをfactor型にし、値の出現頻度に応じて、出現頻度が低い値を「Other」グループにします。 |
fct_other | 指定した値を「Other」グループにまとめる、または指定した値以外を「Other」グループにまとめることができます。 |
fct_inorder | 元のデータ順に基づき値に順序をつけ、データタイプをfactor型に変換します。 |
fct_infreq | 値の頻度をもとに順序をつけ、データタイプをfactor型に変換します。 |
fct_relevel | 値の順序を指定し、データタイプをfactor型に変換します。 |
fct_reorder | 別の列のソートした値に基づいて値の順序を設定し、データタイプをfactor型に変換します。 |
fct_rev | factor型の列のレベルを反転させます。 |
impute_na | impute_naでは、平均値や中央値、手動で指定した値、または線形回帰モデルによる予測値によって欠損値を埋めることができます。 |
get_mode | 最も頻度の多い値を返します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
summarize_row | 指定した集計関数を利用して、各行の列の値を集計 します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
range | 指定されたデータの最小値と最大値を返します。 |
between | 注目している値が、指定された範囲内にあるかどうかをもとに、 TRUE または FALSE を返します。 |
cor | 2つの列の値の相関関係を計算します。共分散を2 つの列の値の標準偏差の積で割ることで計算されます。 |
cov | 2つの列の値の共分散を計算します。 |
str_detect | 特定の文字列が含まれているかどうかに基づいて、TRUEまたはFALSEを返します。 |
list_extract | リスト内のデータがデータフレームの場合、位置または名前をもとにリストのデータ型の列の値を抽出します。 |
list_to_text | リストデータ型の列のすべての要素のテキストを連結します。 |
list_concat | 複数の列の値をリストとして連結します。 |
list_n | 行ごとにリストデータ型の列内の要素の数を返します。 |
full_seq | Generate a sequence of numbers based on the values in a given column. |
nesting | Fix multiple columns so that only the combination of actually existing values in those columns will be used for complete() or expand() operation. |
param_remove | 指定したURLからパラメータを削除します。 |
url_decode | 指定したURLをデコードします。 文字コードはUTF-8を前提としています。 |
url_encode | 指定したURLをエンコードします。 文字コードはUTF-8を前提としています。 |
url_parameters | url からデコードされたクエリのパラメーターを返します。 |
url_domain | url からドメイン (例: "exploratory.io")を返します。 |
url_fragment | url からフラグメントを返します。 |
url_path | urlからパスを返します。 |
url_port | url からポートを返します。 |
url_scheme | urlからスキーム(例:"http"、"https")を返します。 |
url_suffix | urlから接尾辞(例:"com"、"org")を返します。 |
url_subdomain | urlからサブドメイン (例 "www", "blog") を返します。 |
url_tld | url からトップレベルドメイン (例 "com"、"co") を返します。 |
url_param | url からデコードされたクエリパラメーターを返します。 |
- | Removes column(s). It can be used along with any column(s) selection operation like select(), gather(), etc. |
starts_with | Returns the column names that starts with a given text. |
ends_with | Returns the column names that ends with a given text. |
contains | Returns the column names that contain a given text. |
matches | Returns the column names that matches with a given text. |
num_range | Returns the column names that starts with a given text with numbers that are within a given range. It's useful especially when you have column names like X1, X2, X3, X4, etc. |
any_of | Returns the column names that are any of the given names. |
everything | Returns all the column names. It's useful when you want to have particular column(s) first before everything else. |
where | 指定した列選択関数(例:is.numeric関数)の戻り値がTRUEとなる列を返します。 |
across | summarize_rowなど、他の関数で使用する列を選択するときに利用する関数です。 |
vars | Returns a list of user selected columns. |
as_date | POSIXct型の列をDate型に変換できます。 |
weekend | 指定した日付列の値をもとに、平日か週末かのラベルをつけます。 |
is_japanese_holiday | is_jholiday関数のエイリアスです。指定した日付が日本の祝日の場合、TRUEを返します。 |
is_jholiday | 指定された日付が日本の祝日だった場合にTRUEを返します。 |
xgboost_reg | Create extreme gradient boosting model for regression. |
xgboost_binary | Create extreme gradient boosting model for binary classification. |
xgboost_multi | Create extreme gradient boosting model for binary classification. |
randomForestReg | Create random forest model for regression. |
randomForestBinary | Create random forest model for binary classification. |
randomForestMulti | Create random forest model for multi class classification. |
do_survfit | Calculates Survival Curve from survival time and survival status. |
prediction_survfit | Simulates Survival Curve for specified cohort based on a survival model. |
build_coxph | Builds Cox Proportional Hazard Model for survival analysis and store it in a data frame. |
prediction_coxph | Returns a data frame with predicted values of Cox Proportional Hazard Model. |
ip_to_country | IPアドレスから国名を返します。 |
do_tokenize | Returns one token (e.g. word) per row after tokenizing a text. |
pair_count | Count pairs of words (tokens) that cooccur within a group |
do_tfidf | Calculates TF-IDF for each term against a group. TF-IDF is a weighting mechanism that calculates the importance of each word to each document by increasing the importance based on the term frequency while decreasing the importance based on the document frequency. |
do_ngram | Create columns of n-grams connected in sentences. |
do_cosine_sim.kv | Calculates the similarity between each pair of the documents using the cosine similarity algorithm. Cosine similarity measures the cosine of the angle between two vectors in the multi-dimensional space. |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
summarize_group | 指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。 |
mutate_group | 表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。 |
概要
次の条件の意味を反転します。これは論理否定であり、「Not」と同様の意味を持ちます。
シンタックス
!<条件>
返り値
例
filter(!is.na(Population))
Population列のNAでない行を保持します。
filter(!str_detect(City, "Francisco"))
Cityに「Francisco」の文字列が含まれていない行を保持します。
filter(!Sales > 500)
Salesの値が500を超えない行を保持します。
概要
文字列をminlength文字に短縮し、一意にできるようにします。まず、文字列の先頭にある全てのスペースが削除されます。 その後、必要に応じて他のスペースが削除されます。次に、小文字の母音が (右から順に) 削除され、続いて小文字の子音が削除されます。最後に、省略形がminlengthよりも長い場合は、大文字が削除されます。
シンタックス
abbreviate(<列名>
, minlength = <数値>
, dot = <TRUE|FALSE>
)
引数
返り値
Character
例
abbreviate("Exploratory")
"Expl"を返します。
abbreviate("Exploratory", 3)
"Exp"を返します。
概要
数値を絶対値として返す。
シンタックス
abs(<数値列>
)
返り値
Numeric
例
mutate(abs = abs(ARR-DELAY)) 数値を絶対値として返します。
概要
逆余弦の値をラジアン単位で返します。
シンタックス
acos(<数値列>
)
返り値
Numeric
例
acos(X1)
X1列に対してacosで計算した値を返します。
概要
逆双曲線余弦の数値を返します。
シンタックス
acosh(<数値列>
)
返り値
Numeric
例
acosh(X1)
X1列に対してacoshで計算した値を返します。
概要
行またはグループ内の行ですべての行が指定した条件を満たす場合、TRUEを返します。
シンタックス
all(<条件>
, na.rm = <TRUEまたはFALSE>
)
引数
返り値
Logical
例
all(売上 >= 500)
全ての値が売上が500以上の場合はTRUEを返し、500よりも小さい値を一つでもある場合はFALSEを返します。主に集計の際に使用されますが、計算を作成でも使用することができます。
概要
行またはグループ内の行で指定した条件を満たすものが一つでもある場合、TRUEを返します。
シンタックス
any(<条件>
, na.rm = <TRUEまたはFALSE>
)
引数
返り値
Logical
例
any(売上 >= 500)
売上が500以上の値がひとつでもある場合はTRUEを返し、500以上の値が一つもない場合はFALSEを返します。主に集計の際に使用されますが、計算を作成でも使用することができます。
概要
データタイプを文字列型(Character)に変換します。
シンタックス
as.character(<列名>
)
返り値
Character
例
as.character(123.11)
文字列型として"123.11"を返します。
概要
データタイプを日付型(Date)に変換します。日付型のデータには時間の情報は含まれません。デフォルトのフォーマットは「2020-01-01」と表現するISO8601の国際規格に従います。
シンタックス
as.Date(<列名>
, format = <日付のフォーマット>
, tz = <タイムゾーン>
, origin = <日付のテキスト>
)
引数
format (オプショナル) - 指定されたデータを読み取るための日付形式を指定します。指定されていない場合は、「%Y-%m-%d」、「%Y/%m/%d」の順に試行します。
tz (オプショナル) - 指定されたデータの読み取りに使用するタイムゾーンを指定します。
origin (オプショナル) - 内部日数を計算する基となる日付を指定します。
返り値
Date
例
as.Date("2015-10-10")
"2015-10-10"を日付型で返します。
as.Date("10-10-10", format = "%d-%m-%y")
"2010-10-10"を日付型で返します。
as.Date(35981, origin = "1899-12-30") # WindowsのExcelのデータで推薦されます。
"1998-07-05"を日付型で返します。
as.Date(34519, origin = "1904-01-01") # MacのExcelのデータで推薦されます。
"1998-07-05"を日付型で返します。
概要
データタイプを不動小数点型(double)に変換します。数値型(Numeric)と同じ挙動になります。
シンタックス
as.double(<列名>
)
返り値
Double
例
as.double("12345")
12345を返します。
as.double("12345.10")
12345.1を返します。
概要
指定した列をFactor型に変換します。
シンタックス
as.factor(<列名>
)
引数
返り値
Factor
例
columnA - "iMac", "iPod", "iPhone", "iPod", "iPhone"
as.factor(columnA)
データとしてはiMac, iPod, iPhone, iPod, iPhoneを返しますが、レベルとしてはiMac, iPhone, iPodを返します。
概要
データタイプを整数型(integer)に変換します。
シンタックス
as.integer(<列名>
)
返り値
Integer
例
as.integer("12345")
12345を返します。
as.integer("12345.10")
12345を返します。
概要
データタイプをロジカル型(Logical)に変換します。
シンタックス
as.logical(<列>
)
返り値
Logical
例
as.logical("TRUE")
TRUEを返します。
as.logical("true")
TRUEを返します。
as.logical("T")
TRUEを返します。
as.logical("True")
TRUEを返します。
as.logical(1)
TRUEを返します。
概要
データタイプを数値型(Numeric)に変換します。
シンタックス
as.numeric(<列名>
, units = <単位>
)
引数
返り値
Numeric
例
as.numeric("12345")
「12345」を数値型として返します。
as.numeric(as.Date("2015-01-30") - as.Date("2015-01-15"), units = "days")
difftime型のデータから日数である「15」を返します。
as.numeric(as.Date("2015-01-30") - as.Date("2015-01-15"), units = "weeks")
difftime型のデータから週数である「2.142857」を返します。
概要
データタイプを日付・時間型(POSIXct)に変換します。
シンタックス
as.POSIXct(<列名>
, format = <日付時間のフォーマット>
, tz = <タイムゾーン>
, origin = <日付のテキスト>
)
引数
返り値
POSIXct
例
as.POSIXct("2015-10-10 13:10:05")
"2015-10-10 13:10:05 PDT"を返します。
as.POSIXct("2015-10-10 13:10:05", tz = "America/Los_Angeles")
"2015-10-10 13:10:05 PDT"を返します
as.POSIXct("2015-10-10 13:10:05", tz = "Asia/Tokyo")
"2015-10-10 13:10:05 JST"を返します。
as.POSIXct("05-10-15T13:10:05", format = "%d-%m-%yT%H:%M")
"2015-10-05 13:10:00 PDT"を返します。
概要
逆正弦の値をラジアン単位で返します。
シンタックス
asin(<数値列>
)
返り値
Numeric
例
asin(X1)
X1列に対してasinで計算した値を返します。
概要
逆双曲線正弦の数値を返します。
シンタックス
asinh(<数値列>
)
返り値
Numeric
例
asinh(X1)
X1列に対してasinhで計算した値を返します。
概要
逆正接の値をラジアン単位で返します。
シンタックス
atan(<数値列>
)
返り値
Numeric
例
atan(X1)
X1列に対してatanで計算した値を返します。
概要
x軸と原点(0,0)から指定された座標ペア (x
,y
) までの線分との間の角度をラジアン単位で返します。
シンタックス
atan2(<X1>
, <Y1>
)
返り値
Numeric
例
atan2(X1, Y1)
atan2で計算した値を返します。
概要
逆双曲線正接の数値を返します。
シンタックス
atanh(<数値列>
)
返り値
Numeric
例
atanh(X1)
X1列に対してatanhで計算した値を返します。
概要
いくつかの引数を組み合わせるための一般的な関数です。
シンタックス
c(<value1>
, <value2>
, ... , recursive = <TRUE|FALSE>
)
引数
例
c(1:10)
1 2 3 4 5 6 7 8 9 10を返します。
c(1:10, 1:3)
1 2 3 4 5 6 7 8 9 10 1 2 3を返します。
c("a", "b", "c")
"a" "b" "c"を返します。
概要
数値を整数または指定した小数点で切り上げる。
シンタックス
ceiling(<数値列>
, digits = <桁数>
)
引数
返り値
Numeric
例
ceiling(3.475, digits=2)
3.48を返します。
概要
oldで指定された各文字を、newで指定された対応する文字に変換します。
シンタックス
chartr(<old_text>
, <new_text>
, <column_text>
)
引数
返り値
Character
例
x = "abcdef 123456"
chartr("abc", "xyz", x)
"xyzdef 123456"を返します。
chartr("a-f", "u-z", x)
"uvwxyz 123456"を返します。
chartr("a-f", "xxxxxx", x)
"xxxxxx 123456"を返します。
chartr("123", "000", x)
"abcdef 000456"を返します。
概要
指定された角度のコサインをラジアン単位で返します。
シンタックス
cos(<数値列>
)
返り値
Numeric
例
cos(X1)
X1列に対してcosで計算した値を返します。
概要
任意の実数の双曲線余弦を返します。
シンタックス
cosh(<数値列>
)
返り値
Numeric
例
cosh(X1)
X1列に対してcoshで計算した値を返します。
概要
cos(pi *
シンタックス
cospi(<数値列>
)
返り値
Numeric
例
cospi(X1)
X1列に対してcospiで計算した値を返します。
概要
累積最大値を返します。
シンタックス
cummax(<数値列>
)
返り値
Numeric
例
// X = c(1, 2, 3, 2, 1)
cummax(X)
1, 2, 3, 3, 3を返します。
概要
累積最小値を返します。
シンタックス
cummin(<数値列>
)
返り値
Numeric
例
// X = c(1, 2, 3, 2, 1)
cummin(X)
1, 1, 1, 1, 1を返します。
概要
累積積を返します。
シンタックス
cumprod(<数値列>
)
返り値
Numeric
例
// X = c(1, 2, 3, 2, 1)
cumprod(X)
1, 2, 6, 12, 12を返します。
概要
累積合計値を返します。
シンタックス
cumsum(<数値列>
)
返り値
Numeric
例
// X = c(1, 2, 3, 2, 1)
cumsum(X)
1, 3, 6, 8, 9を返します。
概要
数値を指定した数に分割し、その間隔の値(下限,上限)を返します。
シンタックス
cut(<数値列>
, breaks = <数値>
, labels = <文字列>
,
include.lowest = <TRUE|FALSE>
, right = <TRUE|FALSE>
, dig.lab = <数値>
),
ordered_result = <TRUE|FALSE>
)
引数
例
//x = c(1,2,3,4,5,6,7,8,9,10)
cut(x, breaks = 5)
(0.991,2.8] (0.991,2.8] (2.8,4.6] (2.8,4.6] (4.6,6.4] (4.6,6.4] (6.4,8.2] (6.4,8.2] (8.2,10] (8.2,10]を返します。
cut(x, breaks = 2)
(0.991,5.5] (0.991,5.5] (0.991,5.5] (0.991,5.5] (0.991,5.5] (5.5,10] (5.5,10] (5.5,10] (5.5,10] (5.5,10]を返します。
cut(x, breaks = 2, labels = c(1,2))
1 1 1 1 1 2 2 2 2 2を返します。
cut(x, breaks = 2, labels = c("A", "B"))
A A A A A B B B B Bを返します。
概要
指定された2つの日付・時間の差を計算します。
シンタックス
difftime(<日付・時間列>
, <日付・時間列>
, tz = <タイムゾーン>
, units = <期間の単位>
)
引数
返り値
Difftime
例
difftime("2015-12-10", "2015-12-30")
期間の差として「-20」を日単位で返します。
difftime("2015-12-10", "2015-12-30", unit = "hours")
期間の差として「-480」を時単位で返します。
as.numeric(difftime("2015-12-10", "2015-12-30"))
期間の差として「-20」日を数値として返します。
as.numeric(difftime("2015-12-10", "2015-12-30"), units = "hours")
期間の差として「-480」時を数値として返します。
概要
重複した値または行であるかどうかを論理値(TRUE、FALSE)で返します。
シンタックス
duplicated(<列名>
, incomparables = <TRUE|FALSE>
)
引数
返り値
Logical
例
// x <- c("a", "b", "c", "a", "b")
duplicated(x)
FALSE FALSE FALSE TRUE TRUEを返します。
duplicated(x, incomparables = "a")
FALSE FALSE FALSE FALSE TRUEを返します。
duplicated(ARR_TIME)
各行に対してTRUEまたはFALSEを返します。
filter(duplicated(ARR_TIME, ARR-DELAY))
重複した行のみを保持します。
概要
ネイピア数(オイラー数)のe(~2.718)の累乗を返します。
シンタックス
exp(<数値列>
)
返り値
Numeric
例
exp(revenue)
revenueの指数化した値を返します。
概要
レベル(順序)を指定して、列をFactor型に変換します。
シンタックス
factor(<列名>
, levels = <値>
, labels = <文字列>
, exclude = <文字列>
, ordered = <TRUE|FALSE>
, nmax = <数値>
)
引数
返り値
Factor
例
factor(color, levels = c("Gold","Silver","Bronze"), ordered=TRUE)
Before:
color | counts |
---|---|
Bronze | 8 |
Silver | 12 |
Gold | 15 |
After:
color | counts |
---|---|
Gold | 15 |
Silver | 12 |
Bronze | 8 |
概要
数値を整数または指定した小数点で切り捨てる。
シンタックス
floor(<数値列>
, digits = <桁数>
)
引数
返り値
Numeric
例
floor(3.475, digits=2)
Returns 3.47
概要
指定されたテキストをあるエンコーディングから別のエンコーディングに変換します。
シンタックス
iconv(<列名>
, from = <変換前のエンコーディング>
, to = <変換後のエンコーディング>
, sub = <文字列>
, mark = <TRUE|FALSE>
, toRaw = <TRUE|FALSE>
)
引数
返り値
Character
例
iconv(x, "ISO_8859-1", "UTF-8")
Converts a given text from "ISO_8859-1" to "UTF-8".
概要
条件の結果に基づいて、異なる値を返します。
シンタックス
ifelse(<条件>
, <条件にマッチした時に返す値>
, <条件にマッチしない時に返す値>
)
引数
返り値
例
//x <- 1,2,3,4,5
ifelse(x > 3, "Bigger", "Smaller")
"Smaller" "Smaller" "Smaller" "Bigger" "Bigger"を返します。
Summary
Keep the rows that appear in all of the given data frames.
Syntax
Intersect(<data_set(s)>
, ...)
Example
Intersect(DATA_2015)
Keep the rows that appear in the original data and DATA_2015
.
概要
指定されたオブジェクトがCharacter(文字列)型の場合はTRUEを返します。
シンタックス
is.character
返り値
Logical
例
mutate_if(is.character, str_to_lower)
すべてのCharacter型の列の文字列を小文字に変換します。
概要
指定されたオブジェクトがDouble(不動小数点)型の場合はTRUEを返します。
シンタックス
is.double
返り値
Logical
例
mutate_if(is.double, round)
すべてのDouble型の列を四捨五入します。
mutate_if(is.double, funs(. * 0.2))
すべてのDouble型の列に0.2を乗算して、既存の列を上書きします。
mutate_if(is.double, funs(calc = . * 0.2))
すべてのDouble型の列に0.2を乗算して、新規列を作成します。
summarize_if(is.double, mean)
すべてのDouble型の列の平均値を計算します。
概要
指定されたオブジェクトがFactor(順序付きカテゴリー型)の場合はTRUEを返します。
シンタックス
is.factor
返り値
Logical
例
mutate_if(is.factor, as.character)
すべてFactor型の列をCharacter型の列に変換します。
概要
指定されたオブジェクトがList型の場合はTRUEを返します。
シンタックス
is.list
返り値
Logical
例
select_if(is.list)
リスト型の列のみを選択します。
概要
指定されたオブジェクトがLotical(論理値)型の場合はTRUEを返します。
シンタックス
is.logical
返り値
Logical
例
mutate_if(is.logical, as.numeric)
すべてのLogical型の列の値を数値(1、0)に変換します。
summarize_if(is.logical, sum)
すべてのLogical型の列のTRUEの合計値を集計します。
概要
指定されたオブジェクトがMatrix型の場合はTRUEを返します。
シンタックス
is.matrix
返り値
Logical
例
mutate_if(is.matrix, scale)
すべてのMartix型の列の行列をスケールして中央に配置します。
概要
欠損値の場合にTRUEを返します。
シンタックス
is.na(<列名>
)
返り値
Logical
例
is.na(ARR-DELAY)
ARR-DELAY列で欠損値の行にTRUE、欠損値でない行にはFALSEを返します。
概要
nullの場合にTRUEを返します。
シンタックス
is.null(<列名>
)
返り値
Logical
例
is.null(ARR-DELAY)
ARR-DELAY列でnullの行にTRUE、nullでない行にはFALSEを返します。
概要
指定されたオブジェクトがNumeric(数値)型の場合はTRUEを返します。
シンタックス
is.numeric
返り値
Logical
例
mutate_if(is.numeric, funs(. * 0.2))
すべてのNumeric型の列に0.2を乗算して、既存の列を上書きします。
mutate_if(is.numeric, funs(calc = . * 0.2))
すべてのNumeric型の列に0.2を乗算して、新規列を作成します。
summarize_if(is.numeric, mean)
すべてのNumeric型の列の平均値を計算します。
概要
指定された値がTRUEである場合にのみTRUEを返します。
シンタックス
isTRUE(
返り値
Logical
例
isTRUE(TRUE)
TRUEを返します。
isTRUE(FALSE)
FALSEを返します。
summarise(a = isTRUE(mean(ARR-DELAY) > 120))
各グループのARR-DELAYの平均値に基づいてTRUEまたはFALSEを返します。
概要
値の長さを返します。
シンタックス
length(<列名>
)
返り値
Numeric
例
summarize(text_length = length(TAIL_NUM))
各グループの値の数を返します。
概要
指定されたFactor型のレベルを返します。
シンタックス
levels(<列名>
)
例
// x <- as.factor(c("a", "b", "c", "d", "e", "a", "b", "a"))
levels(x)
"a" "b" "c" "d" "e"を返します。
summarise(n = length(levels(as.factor(flight$CARRIER))))
16を返します。
概要
リストを作成します。
シンタックス
list(<列>
)
返り値
List
例
list(sales = 0, profit = 10)
[sales = 0, profit = 10]の名前つきのリストを作成します。
概要
対数を返します。デフォルトは自然対数での値を返します。
シンタックス
log(<数値列>
, base = <数値>
)
引数
返り値
Numeric
例
log(売上)
概要
常用対数(10を底とする対数)を返します。
シンタックス
log10(<数値列>
, base = <数値>
)
引数
返り値
Numeric
例
log10(売上)
概要
log(1+数値) の値を返します。数値がゼロに近い場合でも、正確な値が計算できます。
シンタックス
log1p(<数値列>
, base = <数値>
)
引数
返り値
Numeric
例
log1p(Sales)
概要
二進対数(2を底とする対数)を返します。
シンタックス
log2(<数値列>
, base = <数値>
)
引数
例
Numeric
例
log2(売上)
概要
すべての値の最大値を返します。
シンタックス
max(<数値またはロジカル型の列>
, na.rm = <TRUEまたはFALSE>
)
引数
例
max(売上)
売上の最大値を返します。主に集計の際に使用されますが、計算を作成でも使用することができます。
概要
すべての値の平均値を返します。
シンタックス
mean(<数値またはロジカル型の列>
, na.rm = <TRUEまたはFALSE>
, trim = <数値>)
引数
返り値
Numeric
例
mean(売上)
売上の平均値を返します。主に集計の際に使用されますが、計算を作成でも使用することができます。
概要
すべての値の最小値を返します。
シンタックス
min(<数値またはロジカル型の列>
, na.rm = <TRUEまたはFALSE>
)
引数
例
min(売上)
売上の最小値を集計した結果を返します。主に集計の際に使用されますが、計算を作成でも使用することができます。
概要
計算に使用できるように、数値を月の単位に変換します。
シンタックス
months(<数値列>
)
返り値
Period
例
months(1)
"1m 0d 0H 0M 0S"を返します"
ymd_hms("2015-10-01 06:15:30") + months(1)
"2015-11-01 06:15:30 UTC"を返します
概要
指定された値の文字数またはサイズを返します。
シンタックス
nchar(<列名>
, type = "chars"|"bytes"|"width"
, allowNA = <TRUE|FALSE>
)
引数
返り値
Numeric
例
nchar("Exploratory")
11を返します。
nchar("売上")
2を返します。
nchar("売上", type = "bytes")
6を返します。
概要
並列する値のうち、どちらかの最大値を返します。
シンタックス
pmax(<列名>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
x <- c(1, 2, 3, 4, 5)
y <- c(3, 3, 3, 3, 3)
pmax(x, y)
3 3 3 4 5を返します。
pmax(Value1, Value2, na.rm = TRUE)
Value1またはValue2のうち、どちらかの大きい値を返します。
概要
並列する値のうち、どちらかの最小値を返します。
シンタックス
pmin(<列名>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
x <- c(1, 2, 3, 4, 5)
y <- c(3, 3, 3, 3, 3)
pmin(x, y)
1 2 3 3 3を返します。
pmmin(Value1, Value2, na.rm = TRUE)
Value1またはValue2のうち、どちらかの小さい値を返します。
概要
指定されたデータの一連の数値を乗算して積値を返します。
シンタックス
prod(<列名>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
// x <- 1:5
prod(x)
120を返します。
概要
指定されたデータの最小値と最大値を返します。
シンタックス
range(<列名>
, na.rm = <TRUE|FALSE>
)
引数
返り値
例
// x <- c(1, 2, 3, 4, 5)
1と5を返します。
filter(ARR-DELAY %in% range(DEP-DELAY, na.rm = TRUE))
ARR-DELAYがDEP-DELAYの範囲内にある行のみを保持します。
概要
Repeats given numbers.
シンタックス
rep(<列名>
, times = <数値>
, length_out = <数値>
, each = <数値>
)
引数
返り値
Numeric
例
// x <- c(1, 2, 3, 4, 5)
rep(x, 2)
Returns 1 2 3 4 5 1 2 3 4 5
rep(x, times = 2)
Returns 1 2 3 4 5 1 2 3 4 5
rep(x, length.out = 8)
Returns 1 2 3 4 5 1 2 3
rep(x, times = 2, each = 2)
Returns 1 1 2 2 3 3 4 4 5 5 1 1 2 2 3 3 4 4 5 5
rep(x, length.out = 8, each = 2)
Returns 1 1 2 2 3 3 4 4
概要
Reverses the entries in a given data.
シンタックス
rev(<列名>
)
返り値
例
// x <- c(1, 2, 3, 4, 5)
rev(x)
Returns 5 4 3 2 1
概要
数値を整数または指定した小数点で四捨五入する。
シンタックス
round(<数値列>
, digits = <桁数>
)
引数
返り値
Numeric
例
round(3.475, digits=2)
3.48を返します。
概要
Returns a sequence of numbers.
シンタックス
seq(from = <数値>
, to = <数値>
, by = <数値>
, length.out = <数値>
, along.with = <列名>
)
引数
返り値
Numeric
例
seq(1, 5)
Returns 1 2 3 4 5
seq(1, 5, by = 2)
Returns 1 3 5
seq(1:5)
Returns 1 2 3 4 5
seq(0, 1, length.out = 11)
Returns 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
seq(ymd("2017-04-01"), by = "month", length.out = 6)
Returns "2017-04-01" "2017-05-01" "2017-06-01" "2017-07-01" "2017-08-01" "2017-09-01" - It will generate date values for the next 6 months.
Summary
Keep the rows that appear in the first data frame but not the other data frames.
Syntax
setdiff(<data_set(s)>
, ...)
Example
setdiff(DATA_2015)
Keep the rows that appear in the original data frame but not in DATA_2015
概要
値が正、0、または負であるかどうかに応じて、それぞれ1、0、-1を返します。
シンタックス
sign(<数値列>
)
返り値
Numeric
例
// x <- c(1, 2, 10, 0, -1, -2, -10)
sign(x)
1 1 1 0 -1 -1 -1を返します。
概要
値を指定した有効桁数に四捨五入します。
シンタックス
signif(<数値列>
, digits = <数値>
)
引数
返り値
Numeric
例
signif(3.475, digits=2)
3.5を返します。
概要
指定された角度のサインをラジアン単位で返します。
シンタックス
sin(<数値列>
)
返り値
Numeric
例
sin(X1)
X1列に対してsinで計算した値を返します。
概要
任意の実数の双曲線正弦を返します。
シンタックス
sinh(<数値列>
)
返り値
Numeric
例
sinh(X1)
X1列に対してsinhで計算した値を返します。
概要
sin(pi *
シンタックス
sinpi(<数値列>
)
返り値
Numeric
例
sinpi(X1)
X1列に対してsinpiで計算した値を返します。
概要
値の平方根を返します。
シンタックス
sqrt(<数値列>
)
返り値
Numeric
例
sqrt(revenue)
revenue列の平方根の値を返します。
概要
すべての値の合計値を返します。
シンタックス
sum(<数値またはロジカル型の列>
, na.rm = <TRUEまたはFALSE>
)
引数
返り値
Numeric
例
sum(売上)
売上の合計値を返します。主に集計の際に使用されますが、計算を作成でも使用することができます。
概要
指定された角度のタンジェントをラジアン単位で返します。
シンタックス
tan(<数値列>
)
返り値
Numeric
例
tan(X1)
X1列に対してtanで計算した値を返します。
概要
任意の実数の双曲線正接を返します。
シンタックス
tanh(<数値列>
)
返り値
Numeric
例
tanh(X1)
X1列に対してtanhで計算した値を返します。
概要
tan(pi *
シンタックス
tanpi(<数値列>
)
返り値
Numeric
例
tanpi(X1)
X1列に対してtanpiで計算した値を返します。
概要
数値の小数点以下を切り捨てます。
シンタックス
trunc(<数値列>
)
返り値
Numeric
例
trunc(3.475)
3を返します。
Summary
Keep the rows that appear in one of the given data frames.
Syntax
union(<data_set(s)>
, ...)
Example
union(DATA_2015)
Keep the rows that appear in either or both the original data frame and DATA_2015
.
概要
一意な値の数を返します。
シンタックス
unique(<列名>
, incomparables = <TRUE|FALSE>
, fromLast = <TRUE|FALSE>
, nmax = <数値>
)
引数
返り値
Numeric
例
summarize(text_length = length(unique(TAIL_NUM)))
TAIL_NUMの各グループの一意な値の数を返します。
概要
論理ベクトル内の値の位置を返します。
シンタックス
which(<条件>
, arr.ind = <TRUE|FALSE>
, useNames = <TRUE|FALSE>
)
引数
返り値
Numeric
例
x <- c("a", "b", "c", "d", "e")
which(x == "c")
3を返します。
select(which(sapply(., is.numeric)))
数値型の列のみを残します。
概要
2つの値の排他的論理和のチェックを実行し、2つの値のうち1つだけがTRUEの場合のみTRUEを返します。
シンタックス
xor(<TRUE|FALSE>
, <TRUE|FALSE>
)
返り値
Logical
例
xor(TRUE, TRUE)
FALSEを返します。
xor(TRUE, FALSE)
TRUEを返します。
xor(FALSE, TRUE)
TRUEを返します。
xor(FALSE, FALSE)
FALSEを返します。
Summary
Return all rows from the current data frame where there are not matching values in the target, keeping just columns from the current.
Syntax
anti_join(<data_set>
, by = "<column>
")
anti_join(<data_set>
, by = c("<source_column>
" = "<target_column>
"))
Arguments
Example
anti_join(AIRPORT)
Join with AIRPORT data frame using all variables with common names.
anti_join(AIRPORT, by = "CODE")
Join with AIRPORT data frame using CODE columns.
anti_join(AIRPORT, by = c("DEST" = "CODE")
Join with AIRPORT data frame using DEST column from the original data frame and CODE from the target.
Summary
Sort rows by given column(s).
Syntax
arrange(<column(s)>
)
Used Together
desc
Example
arrange(POPULATION)
Sort by POPULATION values in a ascending order.
arrange(desc(POPULATION))
Sort by POPULATION values in a descending order.
arrange(POPULATION, PRODUCTION)
Sort by POPULATION, PRODUCTION columns in a ascending order.
arrange(-POPULATION, -PRODUCTION)
Sort by POPULATION, PRODUCTION columns in both descending order. This is an equivalent to the following
arrange(desc(POPULATION), desc(PRODUCTION))
概要
注目している値が、指定された範囲内にあるかどうかをもとに、 TRUE または FALSE を返します。
シンタックス
between(<数値列または日付列>
, <left>
, <right>
)
引数
返り値 Logical
例
filter(between(売上, 1000, 6000))
売上が 1000から6000 の間のデータにフィルタします。
Summary
Bind multiple data frames by column.
Syntax
bind_cols(<data_set(s)>
)
Example
bind_cols(ECONOMY)
Add columns from a data frame 'ECONOMY' to the existing data frame.
Summary
Bind multiple data frames by row.
Syntax
bind_rows(<data_set(s)>
, id_column_name = <text>
, current_df_name=<text>
, force_data_type=<logical>
, encoding=<encoding>
)
Arguments
Example
Existing data:
DATA2013
date | sales | product_id |
---|---|---|
11/05/2013 | 5000 | 1 |
12/20/2013 | 2000 | 2 |
Additional data to bind:
DATA2014
date | sales | product_id |
---|---|---|
01/05/2014 | 1000 | 1 |
02/20/2014 | 2000 | 2 |
DATA2015
date | sales | product_id |
---|---|---|
01/05/2015 | 3000 | 1 |
02/20/2015 | 3000 | 2 |
bind_rows(DATA2014)
Add a data frame 'DATA2014' to the existing data.
date | sales | product_id |
---|---|---|
11/05/2013 | 5000 | 1 |
12/20/2013 | 2000 | 2 |
01/05/2014 | 1000 | 1 |
02/20/2014 | 2000 | 2 |
bind_rows(DATA2014, DATA2015)
Add rows from a data frame 'DATA2014' and 'DATA2015' to the existing data.
date | sales | product_id |
---|---|---|
11/05/2013 | 5000 | 1 |
12/20/2013 | 2000 | 2 |
01/05/2014 | 1000 | 1 |
02/20/2014 | 2000 | 2 |
01/05/2015 | 3000 | 1 |
02/20/2015 | 3000 | 2 |
bind_rows(DATA2014, DATA2015, force_data_type = TRUE)
Add rows from a data frame 'DATA2014' and 'DATA2015' to the existing data and force all columns data types as character, then reevaluate columns types after the merge.
For example, if product_id column only has character values for DATA2015, the product_id column data type is Character. And if you try to bind this to other data frames whose the product_id column data type is Integer, it gives an error becuase of this data type mismatch.
date | sales | product_id |
---|---|---|
01/05/2015 | 3000 | a |
02/20/2015 | 3000 | b |
In this case you can set force_data_type
argument as TRUE. This will create a data frame like below:
date | sales | product_id |
---|---|---|
11/05/2013 | 5000 | 1 |
12/20/2013 | 2000 | 2 |
01/05/2014 | 1000 | 1 |
02/20/2014 | 2000 | 2 |
01/05/2015 | 3000 | a |
02/20/2015 | 3000 | b |
bind_rows(DATA2014, DATA2015, current_df_name = "DATA2013", id_column_name = "df_name")
Add rows from a data frame 'DATA2014' and 'DATA2015' to the DATA2013 and it will create a column called 'df_name' and use "DATA2013", "DATA2014", and "DATA2015" to mark each row from two data frames
df_name | date | sales | product_id |
---|---|---|---|
DATA2013 | 11/05/2013 | 5000 | 1 |
DATA2013 | 12/20/2013 | 2000 | 2 |
DATA2014 | 01/05/2014 | 1000 | 1 |
DATA2014 | 02/20/2014 | 2000 | 2 |
DATA2015 | 01/05/2015 | 3000 | 1 |
DATA2015 | 02/20/2015 | 3000 | 2 |
Summary
Summarize the data by either calling n() or sum() for each group.
Syntax
count(<column(s)>
, wt = <column_num_or_base_aggregate_expression>
, sort = <logical>
)
Arguments
Example
count(CARRIER)
Groups by 'CARRIER' and returns the number of rows for each 'CARRIER'.
count(CARRIER, sort = TRUE)
Groups by 'CARRIER' and returns the number of rows for each 'CARRIER' from the highest number to the lowest.
count(CARRIER, wt = ARR_DELAY)
Groups by 'CARRIER' and returns the sum total of 'ARR_DELAY'.
count(CARRIER, TAIL_NUM, wt = ARR_DELAY)
Groups by 'CARRIER' and 'TAIL_NUM', and returns the sum total of 'ARR_DELAY'.
count(CARRIER, wt = ARR_DELAY, sort = TRUE)
Groups by 'CARRIER' and returns the sum total of 'ARR_DELAY' and sorted by the total number.
count(CARRIER, wt = mean(ARR_DELAY, na.rm = TRUE))
Groups by 'CARRIER' and returns the average of 'ARR_DELAY' after removing NA values.
概要
現在の位置までのすべての値がTRUE のときにTRUE を返します。
シンタックス
cumall(<条件>
)
引数
返り値 Logical
例
// X = TRUE, TRUE, FALSE, TRUE, FALSE
cumall(X)
TRUE, TRUE, FALSE, FALSE, FALSEを返します。
概要
現在の位置までの値のいずれかが TRUE ならば TRUE を返します。
シンタックス
cumany(<条件>
)
引数
返り値 Logical
例
// X = TRUE, TRUE, FALSE, TRUE, FALSE
cumany(X)
TRUE, TRUE, TRUE, TRUE, TRUEを返します。
概要
その値の順位以下の全値の割合である累積分布を返します。欠測値の場合は、欠損値を返します。
シンタックス
cume_dist(<数値列>
)
返り値 Numeric
例
mutate(<新しい列名> = cume_dist(<数値列>))
累積分布の値を含む新しい列を作成します。
filter(cume_dist(<数値列>) < .25)
累積分布の値が 0.25 より小さい行を選択します。
概要
累積平均を返します。
シンタックス
cummean(<数値列>
)
引数
返り値 Numeric
例
// X = 1, 2, 3, 2, 1
cummean(X)
1, 3, 6, 8, 9を返します
概要
隙間のない順位を返します。 欠損値の場合は、欠損値がそのまま残ります。
シンタックス
dense_rank(<数値列>
)
返り値 Numeric
例
mutate(人口ラングキング = dense_rank(人口))
「人口」の値をもとにランキングの新しい列を作成します。
filter(dense_rank(人口) < 10)
ランク番号が 10 未満の行を選択します。
Summary
Change the sorting order to a descending order. e.g. 9 to 1 instead of 1 to 9, z to a instead of a to z.
Syntax
desc(<column>
)
Example
arrange(desc(POPULATION))
Sort by POPULATION values in a descending order.
arrange(desc(POPULATION), desc(PRODUCTION))
Sort by POPULATION, PRODUCTION columns in both descending order.
Summary
Select distinct/unique rows. Only the first row will be preserved. Set .keep_all argument to TRUE to keep all the original columns.
Syntax
distinct(<column(s)>
, .keep_all = <logical>
)
Arguments
Example
distinct()
Keep only unique/distinct rows based on all the columns.
distinct(CARRIER, TAIL_NUM, FL_NUM)
Keep only unique/distinct rows based on CARRIER, TAIL_NUM, FL_NUM columns.
distinct(CARRIER, .keep_all = TRUE)
Keep only unique/distinct rows based on CARRIER and return all the columns.
Summary
Select rows with conditions.
Syntax
filter(<condition>
)
Used Together
is.na, between,
Example
filter(revenue < 6000)
Keep data whose revenue is less than 6000.
filter(revenue < 6000 & region == “West")
Keep data whose revenue is less than 6000 AND region is "West".
filter(revenue < 6000 | region == “West")
Keep data whose revenue is less than 6000 OR region is "West".
filter(between(revenue, 1000, 6000))
Keep data whose revenue is between 1000 and 6000.
filter(is.na(revenue))
Keep data whose revenue is NA.
filter(!is.na(revenue))
Keep data whose revenue is NOT NA.
概要
最初の値を返します。
シンタックス
first(<列名>
, order_by = <列名>
, default = <文字列>
)
引数
例
summarize( 最初の名前 = first(名前))
各グループの最初の値を返す新しい列を作成します。
Summary
Return all rows and all columns from both the current data frame and the target data frame.
Syntax
full_join(<data_set>
, by = "<column>
", suffix = c("<source_suffix>
", "<target_suffix>
"))
full_join(<data_set>
, by = c("<source_column>
" = "<target_column>
"), suffix = c("<source_suffix>
", "<target_suffix>
"))
Arguments
Example
full_join(AIRPORT)
Join with AIRPORT data frame using all variables with common names.
full_join(AIRPORT, by = "CODE")
Join with AIRPORT data frame using CODE columns.
full_join(AIRPORT, by = c("DEST" = "CODE")
Join with AIRPORT data frame using DEST column from the original data frame and CODE from the target.
Summary
funs provides a flexible way to generate a named list of functions for input to other functions like summarise_each.
Syntax
funs(<function_name(s)>
)
Arguments
A list of functions specified by: * Their name, "mean" * The function itself, mean * A call to the function with . as a dummy parameter, mean(., na.rm = TRUE)
Example
funs(mean, "mean", mean(., na.rm = TRUE))
# Override default names
funs(m1 = mean, m2 = "mean", m3 = mean(., na.rm = TRUE))
Summary
Converts the data frame into a grouped data frame where the following operations will be performed based on the groups. Grouping should be done before you want to aggregate values.
Syntax
group_by(<column(s)>
)
Example
group_by(COUNTRY)
Group the data by COUNTRY.
group_by(REGION, COUNTRY)
Group the data by REGION and COUNTRY.
group_by(FIRSTNAME + LASTNAME)
Group by a dynamically generated value of 'FIRSTNAME + LASTNAME'
Summary
Return all rows from the current data frame where there are matching values in the current, and all columns from the current and the target.
Syntax
inner_join(<data_set>
, by = "<column>
", suffix = c("<source_suffix>
", "<target_suffix>
"))
inner_join(<data_set>
, by = c("<source_column>
" = "<target_column>
"), suffix = c("<source_suffix>
", "<target_suffix>
"))
Arguments
Example
inner_join(AIRPORT)
Join with AIRPORT data frame using all variables with common names.
inner_join(AIRPORT, by = "CODE")
Join with AIRPORT data frame using CODE columns.
inner_join(AIRPORT, by = c("DEST" = "CODE")
Join with AIRPORT data frame using DEST column from the original data frame and CODE from the target.
概要
注目している値より前の値を返します。
シンタックス
lag(<列>
, n = <数値>
, default = <文字列>
, order_by = <単一または複数列>
)
引数
例
// x <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
lag(x)
NA 1 2 3 4 5 6 7 8 9 を返します
lag(x, 2)
NA NA 1 2 3 4 5 6 7 8 を返します
概要
最後の値を返します。
シンタックス
last(<列名>
, order_by = <列名>
, default = <文字列>
)
引数
例
summarize(最後の名前 = last(名前))
各グループの最後の値を返す新しい列を作成します。
概要
注目している値よりも後の値を返します。
シンタックス
lead(<列>
, n = <数値>
, default = <文字列>
, order_by = <単一または複数列>
)
引数
例
// x <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
lead(x)
2 3 4 5 6 7 8 9 10 NA を返します
lead(x, 2)
3 4 5 6 7 8 9 10 NA NA を返します
Summary
Return all rows from the current data frame, and all columns from the current and the target. Rows in the current with no match in the target will have NA values in the new columns. If there are multiple matches between the current and the target, all combinations of the matches are returned.
Syntax
left_join(<data_set>
, by = "<column>
", suffix = c("<source_suffix>
", "<target_suffix>
"))
left_join(<data_set>
, by = c("<source_column>
" = "<target_column>
"), suffix = c("<source_suffix>
", "<target_suffix>
"))
Arguments
Example
left_join(AIRPORT)
Join with AIRPORT data frame using all variables with common names.
left_join(AIRPORT, by = "CODE")
Join with AIRPORT data frame using CODE columns.
left_join(AIRPORT, by = c("DEST" = "CODE")
Join with AIRPORT data frame using DEST column from the original data frame and CODE from the target.
left_join(AIRPORT, by = c("DEST" = "CODE", "MONTH" = "MON")
Join with AIRPORT data frame using DEST and MONTH columns from the original data frame and CODE and MON from the target respectively.
概要
隙間のある順位を返します。同じ順位のときには、最小の順位を返します。 欠損値の場合は、欠損値がそのまま残ります。
シンタックス
min_rank(<数値列>
)
返り値 Numeric
例
mutate(人口のランキング = min_rank(人口))
「人口」の値にもとづくランキングの列を作成します。 数字が小さいほどランキングが高くなります。
mutate(人口のランキング = min_rank(desc(人口)))
「人口」の値に基づくランキングの列を作成します。数字が大きいほどランキングが高くなります。
filter(min_rank(人口) < 10)
ランク番号が 10 未満の行を選択します。
Summary
Mutate creates new column(s) with given expressions and preserves existing
Syntax
mutate(<new_column>
= <expression>
, ...)
Example
mutate(profit = revenue - expense)
Create 'profit' column based on the calculation result of 'revenue - expense'.
概要
各グループの行数を返します。
シンタックス
n()
引数
返り値 Numeric
例
summarize(total = n())
各グループの行数を計算するための新しい列を作成します。
概要
一意な値の数を返します。
シンタックス
n_distinct(<列名>
, na.rm = <TRUE|FALSE>
)
引数
返り値 Numeric
例
summarize(total = n_distinct(TAIL_NUM))
グループごとのTAIL_NUMの一意な値の数を計算する新しい列を作成します。
summarize(total = n_distinct(州, 街))
グループごとの州と街の一意な組み合わせの数を計算する新しい列を作成します。
概要
n番目の値を返します。
シンタックス
nth(<列名>
, n = <数値>
, order_by = <列名>
, default = <文字列>
)
引数
n - 1つの整数で、何番目の値を返すかを指定します。負の整数をした場合、末尾から値を返します。
order_by (オプショナル) - 順序を決めるためのベクトル
default (オプショナル) - 位置の指定がない場合に使用するデフォルト値。 アトミックベクトルの場合はデフォルトで値が推測され、適切なデータ型の欠損値が返されます。リストの場合はNULLが返されます。 より複雑なオブジェクトの場合は、この値を指定する必要があります。
例
summarize(total = nth(name, 5))
各グループの5番目の値を返します。
summarize(total = nth(name, -5))
各グループの最後から5番目の値を返します。
概要
列の値をもとに n 個に分割します。 欠損値はそのまま残されます。
シンタックス
ntile(<列名>
, <数値>
)
引数
返り値 Numeric
例
mutate(quartile = ntile(売上, 4))
「売上」列の値を 4 つに分割して、四分位の列を生成します。
概要
0から1間で順位比率を返します。 欠損値の場合は、欠損値がそのまま残ります。
シンタックス
percent_rank(<数値列>
)
返り値 Numeric
例
mutate(人口ランキング = percent_rank(人口))
「人口」の値をもとに、順位比率の列を作成します。
filter(percent_rank(人口) < .25)
順位比率が 0.25 未満の行を選択します。
Summary
Rename existing column names.
Syntax
rename(<new_column_name>
= <column>
, ...)
Example
rename(state = X1)
Rename X1 with 'state'
rename(state = X1, country = X2)
Rename X1 with 'state' and X2 with 'country'
Summary
Return all rows from the target data frame, and all columns from the current and the target
Syntax
right_join(<data_set>
, by = "<column>
", suffix = c("<source_suffix>
", "<target_suffix>
"))
right_join(<data_set>
, by = c("<source_column>
" = "<target_column>
"), suffix = c("<source_suffix>
", "<target_suffix>
"))
Arguments
Example
right_join(AIRPORT)
Join with AIRPORT data frame using all variables with common names.
right_join(AIRPORT, by = "CODE")
Join with AIRPORT data frame using CODE columns.
right_join(AIRPORT, by = c("DEST" = "CODE")
Join with AIRPORT data frame using DEST column from the original data frame and CODE from the target.
概要
行番号を返します。
シンタックス
row_number()
引数
返り値 Numeric
例
mutate(行番号 = row_number())
各行の行番号を返します。
Summary
Sample n fraction of rows from the data frame.
Syntax
sample_frac(<number>
, weight=<column_num>
, replace=<logical>
)
Arguments
Example
sample_frac(.2)
Select randomly selected 20% of of data.
sample_frac(.2, weight = ARR_DELAY)
Select randomly selected 20% of of data with a weight on ARR_DELAY column.
Summary
Sample n rows from the data frame.
Syntax
sample_n(<number>
, weight=<column_num>
, replace=<logical>
)
Arguments
Example
sample_n(100)
Select 100 randomly selected rows.
sample_n(100, weight = ARR_DELAY)
Select 100 randomly selected rows from the data with a weight on ARR_DELAY column.
Summary
Select column(s) by column names.
Syntax
select(<column(s)>
,...)
select(-<column(s)>
,...)
select(starts_with(<text>
, ignore.case = <logical>
))
select(ends_with(<text>
, ignore.case = <logical>
))
select(contains(<text>
, ignore.case = <logical>
))
select(matches(<text>
, ignore.case = <logical>
))
select(num_range(<text>
, <start_num>:<end_num>
))
select(any_of(<text1>
, <text2>
, ...))
select(<column>
, everything())
Arguments
Used Together
starts_with, ends_with, contains, matches, num_range, any_of, everything
Example
select(X, Y)
Select column X and Y.
select(-X,- Y)
Remove column X and Y.
select(starts_with("X", ignore.case = TRUE))
Select only columns whose name starts with "X"
select(ends_with("ABR", ignore.case = TRUE))
Select only columns whose name ends with "ABR"
select(contains("ABR", ignore.case = TRUE))
Select only columns whose name contains with "ABR"
select(matches("[:digit:]+", ignore.case = TRUE))
Select only columns whose names contains digits (regular expression)
select(num_range("X", 1:6))
Selects all columns (numerically) from X1 to X5. 
select(any_of("x", "y", "z”))
Selects columns provided inside the brackets.
select(X, everything())
Reorder columns: keep the column “X" in the front
select_if(is.numeric)
Select only numeric columns.
Summary
Return all rows from the current data frame where there are matching values in the target data frame, keeping just columns from the current.
Syntax
semi_join(<data_set>
, by = "<column>
")
semi_join(<data_set>
, by = c("<source_column>
" = "<target_column>
"))
Arguments
Example
semi_join(AIRPORT)
Join with AIRPORT data frame using all variables with common names.
semi_join(AIRPORT, by = "CODE")
Join with AIRPORT data frame using CODE columns.
semi_join(AIRPORT, by = c("DEST" = "CODE")
Join with AIRPORT data frame using DEST column from the original data frame and CODE from the target.
Summary
Select rows by positions. This is not supported for relational databases, in which case you should use filter() with row_number() function.
Syntax
slice(<numeric>
)
slice(<numeric>:<numeric>
)
Arguments
Example
slice(1) : equivalent to -> filter(row_number() == 1)
Select only the first row.
slice(5:n()) : equivalent to -> filter(between(row_number(), 5, n()))
Select only rows starting from the 5th to the last.
slice(n()) : equivalent to -> filter(row_number() == n())
Select only the last row
slice(n()-10:n())
Select only the last 10 rows
Summary
Summarize a column values to a single value by using aggregate functions. Make sure you have grouped the data frame already using group_by() already.
Syntax
summarize(<new_column>
= <aggregate_expression>
, ...)
Example
summarise(avg = mean(revenue))
Create a new column 'avg' to store average values of 'revenue' for each group.
summarize(avg = mean(revenue), total = sum(revenue))
Create new columns 'avg' for 'average of revenue' and 'total' for 'sum of revenue' for each group.
Summary
Summarize the data by either calling n() or sum() on top of the grouped data. group_by() operation should have been done before.
Syntax
tally(wt = <column>
, sort = <logical>
)
Arguments
Example
tally()
Returns the number of rows for each group.
tally(wt = ARR_DELAY)
Returns the sum total of 'ARR_DELAY' for each group.
tally(wt = ARR_DELAY, sort = TRUE)
Returns the sum total of 'ARR_DELAY' and sorted by the total number.
Summary
Select the top n entries based on a given measure in each group.
Syntax
top_n(<number>
, <column_num>
)
top_n(<number>
, desc(<column_num>
))
Arguments
Used Together
desc
Example
top_n(10, POPULATION)
Select the top 10 countries based on POPULATION.
top_n(-10, POPULATION)
Select the bottom 10 countries based on POPULATION. This is equivalent to the next command.
top_n(10, desc(POPULATION))
Summary
Transmute adds new columns and drops existing columns.
Syntax
transmute(<new_column>
= <expression>
, ...)
Example
transmute(profit = revenue - expense)
Create 'profit' column based on the calculation result of 'revenue - expense', and drop 'revenue' and 'expense' columns.
Summary
Ungroup existing grouping
Syntax
ungroup()
Example
ungroup()
Ungroup the existing groups.
概要
日付・時間を、指定した単位に最も近い日付、または時間に切り上げます。
シンタックス
ceiling_date(<日付・時間型の列>
, unit = <単位>
)
引数
返り値
Date / POSIXct
例
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "minute")
分で切り上げした"2015-10-01 06:11:00 UTC"を返します。
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "hour")
時で切り上げした"2015-10-01 07:00:00 UTC"を返します。
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "day")
日で切り上げした"2015-10-02 00:00:00 UTC"を返します。
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "week")
週で切り上げした"2015-10-04 00:00:00 UTC"を返します。
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "month")
月で切り上げした"2015-11-01 00:00:00 UTC"を返します。
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "quarter")
四半期で切り上げした"2016-01-01 00:00:00 UTC"を返します。
ceiling_date(ymd_hms("2015-10-01 06:10:15"), unit = "year")
年で切り上げした"2016-01-01 00:00:00 UTC"を返します。
概要
年の分数である数値データを日付データに変換します。
シンタックス
date_decimal(<数値列>
, tz = <タイムゾーン>
)
引数
返り値
POSIXct
例
date_decimal(2015.953)
"2015-12-14 20:16:47 UTC"を返します。
概要
日付型や日付時間型の値から日の情報を抽出します。
シンタックス
day(<日付型または日付時間型の列>
)
返り値
Numeric
例
day("2015-10-01 06:15:30")
1を返します
概要
計算に使用できるように、数値を日の単位に変換します。
シンタックス
days(<数値列>
)
返り値
Period
例
days(1)
"1d 0H 0M 0S"を返します
ymd_hms("2015-10-01 06:15:30") + days(1)
"2015-10-02 06:15:30 UTC"を返します
概要
日付を年の分数に計算し、日付データを数値データに変換します。
シンタックス
decimal_date(<日付列>
)
引数
返り値
Numeric
例
decimal_date(ymd("2015-12-15"))
2015.953を返します。
概要
日、月、年の順番の文字列または数値データを日付型に変換します。
シンタックス
dmy(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。 返り値
Date
例
dmy("10-01-2015")
"2015-10-01"を返します。
dmy("10/01/2015")
"2015-10-01"を返します。
dmy("Created on 10 1 2015")
"2015-10-01"を返します。
dmy("1 Oct, 2015", locale = "English")
"2015-10-01"を返します。
概要
日、月、年、時の順番の文字列のデータを日付時間型に変換します。
シンタックス
dmy_h(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
dmy_h("01-10-2015 06:10")
"2015-10-01 06:10:00 UTC"を返します。
dmy_h("Created on 1 10 2015, at 6:10AM")
"2015-10-01 06:10:00 UTC"を返します。
dmy_h("10-01-2015 06", truncated = 1)
"2015-10-01 06:00:00 UTC"を返します。
dmy_h("Oct 01 2015 06", locale = "English")
"2015-10-01 06:00:00 UTC"を返します。
概要
日、月、年、時、分の順番の文字列のデータを日付時間型に変換します。
シンタックス
dmy_hm(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
dmy_hm("01-10-2015 06:10")
"2015-10-01 06:10:00 UTC"を返します。
dmy_hm("Created on 1 10 2015, at 6:10AM")
"2015-10-01 06:10:00 UTC"を返します。
dmy_hm("01-10-2015 06", truncated = 1)
"2015-10-01 06:00:00 UTC"を返します。
dmy_hm("01 Oct 2015 06:00",locale = "English)
"2015-10-01 06:00:00 UTC"を返します。
概要
日、月、年、時、分、秒の順番の文字列のデータを日付時間型に変換します。
シンタックス
dmy_hms(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
dmy_hms("01-10-2015 06:10:15")
"2015-10-01 06:10:15 UTC"を返します。
dmy_hms("01/10/2015 06:10:15")
"2015-10-01 06:10:15 UTC"を返します。
dmy_hms("Created on 1 10 2015, at 06:10:15 AM")
"2015-10-01 06:10:15 UTC"を返します。
dmy_hms("01-10-2015 06")
NAを返します。日付時間型に変換する際に十分なデータがないためです。
dmy_hms("01-10-2015 06", truncated = 2)
"2015-10-01 06:00:00 UTC"を返します。truncatedを指定しているため、期待通りの挙動です。
dmy_hms("01 Oct 2015 06:00:00", locale = "English")
"2015-10-01 06:00:00 UTC"を返します。
概要
数値と指定した単位をもとに、秒単位に換算した値を求められます。
シンタックス
duration(<数値列>
, units = <単位>
)
引数
返り値
Duration
例
duration(1.5, "minutes")
90秒を返します。
duration(60, "minutes")
3600秒を返します。
概要
日、年、月の順番の文字列または数値データを日付型に変換します。
シンタックス
dym(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
Date
例
dym("01-2015-10")
"2015-10-01"を返します。
dym("01/2015/10")
"2015-10-01"を返します。
dym("Created on 1 2015 10")
"2015-10-01"を返します。
dym("1 2015, Oct", locale = "English")
"2015-10-01"を返します。
概要
日付・時間を、指定した単位に最も近い日付、または時間に切り捨てます。
シンタックス
floor_date(<日付・時間型の列>
, unit = <単位>
)
引数
返り値
Date / POSIXct
例
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "minute")
分で切り捨てした"2015-10-01 06:10:00 UTC"を返します。
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "hour")
時で切り捨てした"2015-10-01 06:00:00 UTC"を返します。
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "day")
日で切り捨てした"2015-10-01 00:00:00 UTC"を返します。
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "week")
週で切り捨てした"2015-09-27 00:00:00 UTC"を返します。
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "month")
月で切り捨てした"2015-10-01 00:00:00 UTC"を返します。
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "quarter")
四半期で切り捨てした"2015-10-01 00:00:00 UTC"を返します。
floor_date(ymd_hms("2015-10-01 06:10:15"), unit = "year")
年で切り捨てした"2015-01-01 00:00:00 UTC"を返します。
概要
指定したタイムゾーンに修正します。
シンタックス
force_tz(<日付・時間型の列>
, tzone = <タイムゾーン>
)
引数
返り値
POSIXct
例
force_tz(as.POSIXct("2014-01-01 00:00:00", tz = "UTC"), tzone = "Asia/Tokyo")
"2014-01-01 00:00:00 JST"を返します。タイムゾーンのみを日本標準時(JST)に修正した日付・時間の値を返します。
概要
設定されているローカルのタイムゾーンの現在時刻を取得します。
シンタックス
here()
返り値
POSIXct
例
here()
"2015-12-31 00:04:59 PST"を返します。
概要
時と分のデータを期間のデータ型(Period)に変換します。
シンタックス
hm(<列名>
, tz = <タイムゾーン>
)
引数
返り値
Period
例
hm("06:10")
"6H 10M 0S"を返します。
hm("06:10", "UTC")
"6H 10M 0S"を返します。
概要
hms型のデータを作成できます。Hms,difftimeの値を計算で使う際には秒単位で処理されます。
シンタックス
hms(seconds = <数値>
, minutes = <数値>
, hours = <数値>
, days = <数値>
)
引数
返り値
hms
例
hms(seconds = 20, minutes = 1, hours = 5)
05:01:20を返します。
概要
日付型や日付時間型の値から時間の情報を抽出します。
シンタックス
hour(<日付型または日付時間型の列>
)
返り値
Integer
例
hour("2015-10-01 06:15:30")
6を返します
概要
計算に使用できるように、数値を時間の単位に変換します。
シンタックス
hours(<数値列>
)
返り値
Period
例
hours(1)
"1H 0M 0S"を返します
ymd_hms("2015-10-01 06:15:30") + hours(1)
"2015-10-01 07:15:30 UTC"を返します
概要
2つの日付間の間隔を秒単位で返します。この結果を使用して、日、週などの特定の単位で除算するか、as.numeric()で数値型に変換することで期間を取得できます。
シンタックス
interval(<日付列>
, <日付列>
)
返り値
Interval
例
interval("2015-10-01", "2015-10-18")
1468800を返します。
interval("2015-10-01", "2015-10-18") %/% days(1)
17を返します。
as.numeric(interval("2015-10-01", "2015-10-18"), units = "days")
17を返します。
interval("2015-10-01", "2015-10-18") %/% weeks(1)
2を返します。
概要
指定したオブジェクトが日付型の場合はTRUEを返します。
シンタックス
is.Date
引数
返り値
Logical
例
mutate_if(is.Date, wday)
日付列から曜日情報を抽出します。
mutate_if(is.Date, funs(week_day = wday))
日付列から曜日情報を抽出し、新しい列を作成します。
mutate_if(is.Date, wday, label = TRUE)
日付列から曜日情報を文字列として抽出し、新しい列を作成します。
概要
指定したオブジェクトがdifftime型の場合はTRUEを返します。
シンタックス
is.difftime
引数
返り値
Logical
例
mutate_if(is.difftime, as.numeric)
difftime型の列を数値型に変換します。
概要
指定したオブジェクトがduration型の場合はTRUEを返します。
シンタックス
is.duration
引数
返り値
Logical
例
mutate_if(is.duration, as.numeric)
duration型の列を数値型に変換します。
概要
指定したオブジェクトがPOSIXct型の場合はTRUEを返します。
シンタックス
is.POSIXct
引数
返り値
Logical
例
mutate_if(is.POSIXct, wday)
日付時間型の列から曜日情報を抽出します。
mutate_if(is.POSIXct, funs(week_day = wday))
日付時間型の列から曜日情報を抽出し、新しい列を作成します。
mutate_if(is.POSIXct, wday, label = TRUE)
日付時間型の列から曜日情報を文字列として抽出し、新しい列を作成します。
概要
年の週番号を抽出します。週の開始曜日は月曜日になっています。
シンタックス
isoweek(<日付列>
)
返り値
Numeric
例
isoweek(ymd(c( \
"2020-01-01",\
"2020-01-02",\
"2020-01-03",\
"2020-01-04",\
"2020-01-05",\
"2020-01-06",\
"2020-01-07",\
"2020-01-08")))\
1,1,1,1,1,2,2,2を返します。 (2020-01-06が月曜日です。)
概要
日付列から月の日(1-31)を抽出します。
シンタックス
mday(<日付列>
)
返り値
Numeric
例
mday("2015-10-13")
13を返します。
概要
月、日、年の順番の文字列または数値データを日付型に変換します。
シンタックス
mdy(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
Date
例
mdy("01-10-2015")
"2015-10-01"を返します。
mdy("01/10/2015")
"2015-10-01"を返します。
mdy("Created on 1 10 2015")
"2015-10-01"を返します。
mdy("Oct, 1 2015", locale = "English")
"2015-10-01"を返します。
概要
月、日、年、時の順番の文字列のデータを日付時間型に変換します。
シンタックス
mdy_h(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
mdy_h("10-01-2015 06")
"2015-10-01 06:00:00 UTC"を返します。
mdy_h("Created on 10 1 2015 6 AM")
"2015-10-01 06:00:00 UTC"を返します。
mdy_h("Oct 1, 2015 06 AM", locale = "English")
"2015-10-01 06:00:00 UTC"を返します。
概要
月、日、年、時、分の順番の文字列のデータを日付時間型に変換します。
シンタックス
mdy_hm(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
mdy_hm("10-01-2015T06:10")
"2015-10-01 06:10:00 UTC"を返します。
mdy_hm("Created on 10 1 2015, at 6:10 AM")
"2015-10-01 06:10:00 UTC"を返します。
mdy_hm("Oct 1, 2015 06:10 AM", locale = "English")
"2015-10-01 06:10:00 UTC"を返します。
概要
月、日、年、時、分、秒の順番の文字列のデータを日付時間型に変換します。
シンタックス
mdy_hms(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
mdy_hms("10-01-2015T06:10:15")
"2015-10-01 06:10:15 UTC"を返します。
mdy_hms("10/01/2015T06:10:15")
"2015-10-01 06:10:15 UTC"を返します。
mdy_hms("Created on 10 1 2015")
"2015-10-01 06:10:15 UTC"を返します。
mdy_hms("10-01-2015 06")
NAを返します。日付時間型に変換する際に十分なデータがないためです。
mdy_hms("10-01-2015 06", truncated = 2)
"2015-10-01 06:00:00 UTC"を返します。truncatedを指定しているため、期待通りの挙動です。
mdy_hms("Oct 1, 2015 06:10:15 AM", locale = "English")
"2015-10-01 06:10:15 UTC"を返します。
概要
数値をミリ秒に変換してPeriod型として値を返します。
シンタックス
milliseconds(<数値列>
)
返り値
Period
例
milliseconds(1)
"0.001"を返します。
概要
日付型や日付時間型の値から分の情報を抽出します。
シンタックス
minute(<日付列>
)
返り値
Integer
例
minute("2015-10-01 06:15:30")
15を返します
概要
計算に使用できるように、数値を分の単位に変換します。
シンタックス
minutes(<数値列>
)
返り値
Period
例
minutes(1)_
"1M 0S"を返します
ymd_hms("2015-10-01 06:15:30") + minutes(1)
"2015-10-01 06:16:30 UTC"を返します
概要
日付型や日付時間型の値から月の情報を抽出します。
シンタックス
month(<日付型または日付時間型の列>
, label = <logical>
, abbr = <logical>
, locale = <ロケール>
)
引数
返り値
Numeric or Text
例
month("2015-10-01 06:15:30")
10を返します
month("2015-10-01 06:15:30", label = FALSE)
"10月"を返します
month("2015-10-01 06:15:30", label = TRUE, abbr = TRUE)
"10"を返します
概要
分と秒のデータを期間のデータ型(Period)に変換します。
シンタックス
ms(<列名>
, tz = <タイムゾーン>
)
引数
返り値
Period
例
ms("10:15")
"615"を返します。これは10分15秒を秒単位に直した値です。
概要
月、年、日の順番の文字列または数値データを日付型に変換します。
シンタックス
myd(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
Date
例
myd("01-2015-10")
"2015-01-10"を返します。
myd("01/2015/10")
"2015-01-10"を返します。
myd("Created on 1 2015 10")
"2015-01-10"を返します。
myd("Oct, 2015 1 ", locale = "English")
"2015-10-01"を返します。
概要
日付を含む現在時刻を返します。似た関数に'today()'があり、today関数は今日の日付のみを返します。
シンタックス
now(tzone = <タイムゾーン>
)
引数
返り値
POSIXct
例
now()
"2015-12-31 08:04:59 PST"を返します
now("GMT")
"2015-12-31 08:04:59 PST"を返します
now("America/Los_Angeles")
"2015-12-31 00:04:59 PST"を返します
概要
データを日付時間型に変換します。
シンタックス
parse_date_time(<列名>
, orders = <日付時間の順序>
, locale = <ロケール>
, tz = <タイムゾーン>
, truncated = <数値>
, quiet = <TRUE|FALSE>
, exact = <TRUE|FALSE>
, lt = <TRUE|FALSE>
)
引数
orders - 元データの日付時間の順序を指定できます。サポートされているパラメーターは以下の通りです。
locale - デフォルトはシステム設定のロケールです。 タイムゾーン、エンコーディング、小数点、日/月名などの日付時間関連の設定を設定します。
tz (オプショナル) - 日付型に変換する時のタイムゾーンを指定できます。tzを使用すると、日付時間型(POSIXct)に変換されます。タイムゾーンのリストは こちらから確認いただけます。
truncated (オプショナル) - 欠落している日付の形式の数を指定でき、デフォルトは0になっています.
quiet (オプショナル) - デフォルトはFALSEです。TRUEの場合、フォーマットが間違っている場合のエラーを抑制します。
exact (オプショナル) - デフォルトはFALSEです。TRUEの場合、ordersのパラメーターは明示的な形式(例: "%m/%d/%y %I:%M")である必要があります。
lt (オプショナル) - デフォルトはFALSEです。TRUEの場合、POSIXltを返します。
返り値
POSIXct
例
parse_date_time("03/15/05 1:30 PM", "mydHMp")
"2015-03-05 13:30:00 PDT"を返します。
lubridate::parse_date_time("1:30 PM", "HMp")
"0000-01-01 13:30:00 PDT"を返します。各パラメータのデフォルトは0で、常にPOSIXctを返します。
概要
日付列から四半期の最初の日からの日数(1-92)を抽出します。
シンタックス
qday(<日付列>
)
返り値
Numeric
例
qday("2020-02-08")
39を返します。
概要
日付型や日付時間型の値から四半期の情報を抽出します。
シンタックス
quarter(<日付列>
)
返り値
Numeric
例
quarter("2015-08-01 06:15:30")
3を返します
quarter("2015-06-16 07:42:29")
2を返します
概要
日付データを前月の末日、またはその月の最初の日に丸め処理します。
シンタックス
rollback(<日付列>
, roll_to_first = <TRUE|FALSE>
, preserve_hms = <TRUE|FALSE>
)
引数
返り値
POSIXct
例
rollback(ymd("2020-04-03"))
"2020-03-31"を返します。
rollback(ymd("2020-04-03"), roll_to_first = TRUE)
"2020-04-01"を返します。
rollback(ymd_hms("2020-04-03 09:21:45"), preserve_hms = FALSE)
"2020-03-31 00:00:00"を返します。
概要
日付・時間を、指定した単位に最も近い日付、または時間に丸めます。
シンタックス
round_date(<日付・時間型の列>
, unit = <単位>
)
引数
返り値
Date / POSIXct
例
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "minute")
分で丸め処理した"2015-10-01 06:10:00 UTC"を返します。
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "hour")
時で丸め処理した"2015-10-01 06:00:00 UTC"を返します。
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "day")
日で丸め処理した"2015-10-01 00:00:00 UTC"を返します。
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "week")
週で丸め処理した"2015-10-04 00:00:00 UTC"を返します。
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "month")
月で丸め処理した"2015-10-01 00:00:00 UTC"を返します。
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "qurter")
四半期で丸め処理した"2015-10-01 00:00:00 UTC"を返します。
round_date(ymd_hms("2015-10-01 06:10:15"), unit = "year")
年で丸め処理した"2015-01-01 00:00:00 UTC"を返します。
概要
日付型や日付時間型の値から秒の情報を抽出します。
シンタックス
second(<日付型または日付時間型の列>
)
返り値
Integer
例
second("2020-10-01 06:15:30")
30を返します
概要
計算に使用できるように、数値を秒の単位に変換します。
シンタックス
seconds(<数値列>
)
返り値
Period
例
seconds(1)
"1S"を返します
ymd_hms("2015-10-01 06:15:30") + seconds(1)
"2015-10-01 06:15:31 UTC"を返します
概要
2つの日付間の正確な期間を計算して数値として値を返します。
シンタックス
time_length(<interval_or_duration>
, unit = <unit>
)
引数
返り値
Numeric
例
time_length(interval("2015-10-01", "2015-10-18"), "day")
17を返します。
time_length(interval("2015-10-01", "2015-10-18"), "month")
0.5483871を返します。
trunc(time_length(interval("2015-10-01", "2015-10-18"), "month"))
0を返します。
round(time_length(interval("2015-10-01", "2015-10-18"), "month"))
1を返します。
概要
今日の日付を返します。似た関数に'now()'があり、now関数は現在時刻含む今日の日付を返します。
シンタックス
today(tzone = <タイムゾーン>
)
引数
返り値
Date
例
today("GMT")
"2015-12-31"を返します
today("America/Los_Angeles")
"2015-12-31"を返します
概要
日付列から曜日(1-7)を数値(例: 月曜日は1)、または文字列(例: 日曜日)として返します。文字列はショート(例: 日)、またはロング(例: 日曜日)として返すことができます。
シンタックス
wday(<日付列>
, label = <TRUE|FALSE>
, abbr = <TRUE|FALSE>
, week_start = <数値>
, locale = <ロケール>
)
引数
返り値
Numeric or Text
例
wday("2015-10-01")
5を返します。
wday("2015-10-01", label = TRUE)
"木"を返します。
wday("2015-10-01", label = TRUE, abbr=FALSE)
"木曜日"を返します。
概要
日付型や日付時間型の値から1年の週番号を抽出します。第1週の1日目は、曜日に関係なく、常に1月1日から始まります。
シンタックス
week(<日付型または日付時間型の列>
)
返り値
Numeric
例
week(ymd(c( \
"2020-01-01",\
"2020-01-02",\
"2020-01-03",\
"2020-01-04",\
"2020-01-05",\
"2020-01-06",\
"2020-01-07",\
"2020-01-08")))\
1,1,1,1,1,1,1,2を返します
概要
計算に使用できるように、数値を週の単位に変換します。
シンタックス
weeks(<数値列>
)
返り値
Period
例
weeks(1)
"7d 0H 0M 0S"を返します
ymd_hms("2015-10-01 06:15:30") + weeks(1)
"2015-10-08 06:15:30 UTC"を返します
概要
指定したタイムゾーンでの日付・時間を返します。
シンタックス
with_tz(<日付・時間型の列>
, tzone = <タイムゾーン>
)
引数
返り値
POSIXct
例
with_tz(as.POSIXct("2014-01-01 00:00:00", tz = "UTC"), tzone = "Asia/Tokyo")
"2014-01-01 09:00:00 JST"を返します。元のタイムゾーンはUTCでしたが、日本標準時(JST)に変換した日付・時間の値を返します。
with_tz(as.POSIXct("2014-01-01 00:00:00", tz = "UTC"))
"2014-01-01 09:00:00 JST"を返します。 with_tz()関数は、tzに何も指定しない場合はシステム設定にて指定されているデフォルトのタイムゾーンで変換した日付・時間の値を返します。
概要
日付列から年の日(1-366)を抽出します。
シンタックス
yday(<日付列>
)
返り値
Numeric
例
yday("2015-10-01")
274を返します。
概要
年、日、月の順番の文字列または数値データを日付型に変換します。
シンタックス
ydm(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
Date
例
ydm("2015-10-01")
"2015-01-10"を返します。
ydm("2015/10/01")
"2015-01-10"を返します。
ydm("Created on 2015 10 1")
"2015-01-10"を返します。
ydm("2015, 1 Oct", locale = "English")
"2015-10-01"を返します。
概要
年、日、月、時の順番の文字列のデータを日付時間型に変換します。
シンタックス
ydm_h(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
ydm_h("2015-01-10T06")
"2015-10-01 06:00:00 UTC"を返します。
ydm_h("2015/01/10 06")
"2015-10-01 06:00:00 UTC"を返します。
ydm_h("Created on 15-01-10 at 6 AM")
"2015-10-01 06:00:00 UTC"を返します。
ydm_h("2015 01 Oct, at 6 AM", locale = "English")
"2015-10-01 06:00:00 UTC"を返します。
概要
年、日、月、時、分の順番の文字列のデータを日付時間型に変換します。
シンタックス
ydm_hm(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
ydm_hm("2015-01-10 06:10")
"2015-10-01 06:10:00 UTC"を返します。
ydm_hm("2015/01/10 06:00 UTC")
"2015-10-01 06:10:15 UTC"を返します。
ydm_hm("Created on 15-01-10 at 06:10 AM")
"2015-10-01 06:10:00 UTC"を返します。
ydm_hm("2015 01 Oct, at 6:10 AM", locale = "English")
"2015-10-01 06:10:00 UTC"を返します。
概要
年、日、月、時、分、秒の順番の文字列のデータを日付時間型に変換します。
シンタックス
ydm_hms(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
ydm_hms("2015-01-10T06:10:15")
"2015-10-01 06:10:15 UTC"を返します。
ydm_hms("2015/01/10 06:10:15 UTC")
"2015-10-01 06:10:15 UTC"を返します。
ydm_hms("Created on 15-01-10 at 06:10:15 AM")
"2015-10-01 06:10:15 UTC"を返します。
ydm_hms("2015-01-10 06")
NAを返します。日付時間型に変換する際に十分なデータがないためです。
ydm_hms("2015-01-10 06", truncated = 2)
"2015-10-01 06:00:00 UTC"を返します。truncatedを指定しているため、期待通りの挙動です。
ydm_hms("2015 01 Oct, at 6:10:15 AM", locale = "English")
"2015-10-01 06:10:15 UTC"を返します。
概要
日付型や日付時間型の値から年の情報を抽出します。
シンタックス
year(<日付型または日付時間型の列>
)
返り値
Numeric
例
year("2015-10-01 06:15:30")
2015を返します
概要
計算に使用できるように、数値を年の単位に変換します。
シンタックス
years(<数値列>
)
返り値
Period
例
ymd_hms("2015-10-01 06:15:30") + years(1)
"2016-10-01 06:15:30 UTC"を返します
概要
年、月、日の順番の文字列または数値データを日付型に変換します。
シンタックス
ymd(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
Date
例
ymd("2015-10-01")
"2015-10-01"を返します。
ymd("2015/10/01")
"2015-10-01"を返します。
ymd("Created on 2015 10 1")
"2015-10-01"を返します。
ymd("2015, Oct 1", locale = "English")
"2015-10-01"を返します。
概要
年、月、日、時の順番の文字列のデータを日付時間型に変換します。
シンタックス
ymd_h(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
ymd_h("2015-10-01T06")
"2015-10-01 06:00:00 UTC"を返します。
ymd_h("2015/10/01 06")
"2015-10-01 06:00:00 UTC"を返します。
ymd_h("Created on 15-10-01 at 6 AM")
"2015-10-01 06:00:00 UTC"を返します。
ymd_h("2015, Oct 1 6AM", locale = "English")
"2015-10-01 06:00:00 UTC"を返します。
概要
年、月、日、時、分の順番の文字列のデータを日付時間型に変換します。
シンタックス
ymd_hm(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
ymd_hm("2015-10-01 06:10")
"2015-10-01 06:10:00 UTC"を返します。
ymd_hm("2015/10/01 06:00 UTC")
"2015-10-01 06:10:15 UTC"を返します。
ymd_hm("Created on 15-10-01 at 06:10 AM")
"2015-10-01 06:10:00 UTC"を返します。
ymd_hm("2015, Oct 1 06:10 AM", locale = "English")
"2015-10-01 06:10:00 UTC"を返します。
概要
年、月、日、時、分、秒の順番の文字列のデータを日付時間型に変換します。
シンタックス
ymd_hms(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
, truncated = <数値>
)
引数
truncated = 1
と指定することで"2023-01-01"として値を返すことができます。返り値
POSIXct
例
ymd_hms("2015-10-01T06:10:15")
"2015-10-01 06:10:15 UTC"を返します。
ymd_hms("2015/10/01 06:10:15 UTC")
"2015-10-01 06:10:15 UTC"を返します。
ymd_hms("Created on 15-10-01 at 06:10:15 AM")
"2015-10-01 06:10:15 UTC"を返します。
ymd_hms("2015-10-01 06")
NAを返します。日付時間型に変換する際に十分なデータがないためです。
ymd_hms("2015-10-01 06", truncated = 2)
"2015-10-01 06:00:00 UTC"を返します。truncatedを指定しているため、期待通りの挙動です。
ymd_hms("2015, Oct 1 06:10:15 AM", locale = "English")
"2015-10-01 06:10:15 UTC"を返します。
概要
2つの列の値の相関関係を計算します。共分散を2 つの列の値の標準偏差の積で割ることで計算されます。
シンタックス
cor(<数値列>
, <数値列>
, use = <欠損値の処理方法>
, method = <計算方法>
)
引数
例
summarize(相関 = cor(到着遅れ, 出発遅れ))
到着遅れの列と出発遅れの列の相関係数を計算します。
概要
2つの列の値の共分散を計算します。
シンタックス
cov(<数値列>
, <数値列>
, use = <欠損値の処理方法>
, method = <計算方法>
)
引数
例
summarize(covariance = cov(到着遅れ, 出発遅れ))
到着遅れの列と出発遅れの列の共分散を計算します。
概要
四分位範囲を計算します。
シンタックス
IQR(<数値列>
, na.rm = <TRUE|FALSE>
, type = 1|2|3|4|5|6|7|8|9
)
引数
返り値
Numeric
例
// x <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
IQR(x)
4.5を返します
概要
中央絶対偏差を計算します。
シンタックス
mad(<数値列>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(売上の中央絶対偏差= mad(売上))
各グループの売上の絶対偏差の中央値を計算した新しい列を作成します。
概要
中央値を計算します。
シンタックス
median(<数値列>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(売上の中央値= median(売上))
各グループの収益の中央値を計算した新しい列を作成します。
Summary
Returns data augmented with fitted values and residuals.
Syntax
predict(<column_model>
, data = <column_data_set>
, newdata = <data_set>
, type.predict = "link"|"response"
)
Arguments
Example
predict(model) - assume that 'model' column contains a fitted model of 'lm', 'glm' or 'kmeans'. If it's lm, the output is like below.
.rownames | ARR_DELAY | DEP_DELAY | .fitted | .se.fit | .resid | .hat | .sigma | .cooksd | .std.resid |
---|---|---|---|---|---|---|---|---|---|
1 | -15 | -9 | -13.934 | 0.0247 | -1.066 | 0.0000035503 | 13.0886 | 7.8503e-9 | -0.0814 |
2 | -28 | -19 | -22.4116 | 0.035 | -5.5884 | 0.0000071333 | 13.0886 | 4.3348e-7 | -0.427 |
概要
与えられた確率に対応する標本の分位数を計算します。最小値は確率0に対応し,最大値は確率1に対応します。
シンタックス
quantile(<数値列>
, probs = <確率>
, na.rm = <TRUE|FALSE>
, [type = 1|2|3|4|5|6|7|8|9
])
引数
返り値
Numeric
例
//x <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
quantile(x, 0.25)
3.25を返します
quantile(x, .5)
5.5を返します。
概要
標準偏差を計算します。
シンタックス
sd(<数値列>
, na.rm = <TRUE|FALSE>)
)
引数
返り値
Numeric
例
summarize(sd = sd(売上))
各グループの収益の標準偏差を計算した新しい列を作成します。
概要
分散を計算します。
シンタックス
var(<数値列>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(売上の分散 = var(売上))
各グループの売上の分散を計算した新しい列を作成します。
概要
複数のテキストや列をくっつけることができます。
シンタックス
str_c(<列>
, sep = <区切り文字>
, collapse = <区切り文字>
)
引数
返り値
Character
例
str_c(LastName, FirstName)
LastNameとFirstNameをくっつけた値を返す。
str_c(LastName, FirstName, sep = "-")
LastNameとFirstNameを区切り文字で指定したハイフン(-)でくっつけた値を返す。
str_c(ProductName, collapse = ",")
コンマ(,)を使用してProductNameの値をグループごとに一つの値にまとめた値を返す。集計のカスタムでの使用が有効です。
概要
テキストを指定されたエンコーディング(例:UTF-8)に変換します。
シンタックス
str_conv(<テキストの列>
, <encoding>
)
引数
返り値
Character
例
str_conv("Exploratory", "UTF-8")
概要
テキストデータの文字数または単語数を返します。一致したパターンまたはテキストのみをカウントするように設定できます。
シンタックス
str_count(<列名>
, pattern = <文字列>
)
str_count(<列名>
, pattern = [<正規表現>]
)
str_count(<列名>
, pattern = [boundary("word")]
)
引数
返り値
Numeric
例
str_count("I'm traveling to New York on 1/1.")
句読点とスペースを含めた33を返します。
str_count("I'm traveling to New York on 1/1.", "New")
指定した「New」と一致した数である1を返します。
str_count("I'm traveling to New York on 1/1.", "[:alpha:]")
アルファベットのみを数えて22を返します。
str_count("I'm traveling to New York on 1/1.", "[:digit:]")
数値のみを数えて2を返します。
str_count("I'm traveling to New York.", boundary("word"))
単語の数として5を返します
str_count("I'm traveling to New York on 1/1.", ".")
ピリオド(.)は何にでも一致するため33を返します。
str_count("I'm traveling to New York on 1/1.", fixed("."))
fixed()
で文字としてのピリオドを数えるため1を返します
概要
特定の文字列が含まれているかどうかに基づいて、TRUEまたはFALSEを返します。
シンタックス
str_detect(<テキストの列>
, <文字列または正規表現>
)
引数
返り値
Logical
例
str_detect("New York", "New")
文字列にNewが含まれているため「TRUE」を返します。
str_detect("New York on 1/1.", "[:alpha:]")
文字列にアルファベットが含まれているため「TRUE」を返します。
str_detect("New York on 1/1.", "[:digit:]")
文字列に数字が含まれているため「TRUE」を返します。
str_detect("New York on 1/1.", "^New")
文字列の先頭に”New”が含まれているため「TRUE」を返します。
str_detect("New York on 1/1.", "New$")
文字列の末尾に”New”が含まれていないため「FALSE」を返します。
str_detect("New York on 1/1.", c("New", "Old"))
指定した文字列の一つのマッチするため、「TRUE」を返します。
概要
文字列の値を繰り返します。
シンタックス
str_dup(<テキストの列>
, times = <繰り返す回数>
)
引数
返り値
Character
例
str_dup("wow", 2)
"wow"を2回繰り返した"wowwow"を返します。
概要
指定した文字列または正規表現に一致する文字列を抽出します。
シンタックス
str_extract(<テキストの列>
, <抽出する文字列>
)
引数
返り値
Character
例
str_extract("ABCabc123", "[A-Za-z]+")
アルファベットのみを抽出して "ABCabc"を返します。
str_extract("ABCabc123", "[:alpha:]+")
アルファベットのみを抽出して "ABCabc"を返します。
str_extract("ABCabc123", "[0-9]+")
数字のみを抽出して"123"を返します。
str_extract("ABCabc123", "[:digit:]+")
数字のみを抽出して"123"を返します。
概要
指定した文字列または正規表現に一致する文字列をすべて抽出します。
シンタックス
str_extract_all(<テキストの列>
, <抽出する文字列>
)
引数
返り値
List
例
str_extract_all("Hello world", "[:alpha:]+")
指定した文字であるアルファベットと一致する全ての値として、 c("Hello", "world")を返します。
str_extract("Hello world", "[:alpha:]+")
最初に一致したアルファベットとして"Hello"を返します。
概要
テキストデータの文字数を返します。
シンタックス
str_length(<列名>
)
返り値
Numeric
例
str_length("I'm traveling to New York.")
句読点とスペースを含めた26を値として返します
概要
指定した文字数に満たない空白箇所をスペース、または特定の文字で埋めることができます。
シンタックス
str_pad(<テキストの列>
, width = <数値>
, side = "left"|"right"|"both"
, pad = <埋める文字>
)
引数
返り値
Character
例
str_pad("Exploratory", 3)
指定した3文字は元のテキストの方が文字数が多いため、そのままのテキストである「Exploratory」を返します。
str_pad("Exploratory", 20, "left")
指定した20文字を満たさないため、空白を追加してテキストの文字数を20にした「 Exploratory」を返します。
概要
指定した文字列または正規表現に一致する文字列を置き換えます。
シンタックス
str_replace(<テキストの列>
, <置換元の文字列>
, <置換後の文字列>
)
引数
返り値
Character
例
str_replace("I am traveling to New York!!", "York", "Jersey")
" York"を"Jersey"に置換した"I am traveling to New Jersey"を返します。
str_replace("New York New", "^New", "Old")
先頭の"New"を"Old"に置換した"Old York New"を返します。
str_replace("New York New.", "New$", "Old")
末尾の"New"を"Old"に置換した"New York Old"を返します。
概要
指定した文字列または正規表現に一致する文字列をすべて置き換えます。
シンタックス
str_replace_all(<テキストの列>
, <置換元の文字列>
, <置換後の文字列>
)
引数
返り値
Character
例
str_replace_all("Softbank Corp., Airbnb Corp.", "Corp.", "Corporation")
"Corp."を"Corporation"に置換した"Softbank Corporation, Airbnb Corporation"を返します。
概要
欠損値(NA)を特定の文字列に置換します。
シンタックス
str_replace_na(<テキストの列>
, <置換する文字列>
)
引数
返り値
Character
例
str_replace_na(ARR_DELAY, "Not Available")
ARR_DELAYの列で欠損値の場合に"Not Available"を返します。
概要
指定した区切り文字によって、複数のテキストに分割します。値はリストとして返されるため、unnest() 関数で新しく作成された列のネストを解除する必要があります。
シンタックス
str_split(<テキストの列>
, pattern = <文字列または正規表現>
, n = <数値>
)
引数
返り値
List
例
str_split("a, b, c", ",")
リスト形式で"a" " b" " c"を返します。
str_split("a, b, c", ",", 2)
リスト形式で"a"と" b, c"を返します。
概要
位置に基づいて文字列を抽出します。
シンタックス
str_sub(<テキストの列>
, <開始位置>
, <終了位置>
)
引数
返り値
Character
例
str_sub("Kevin Spacey", start = 7, end = 12)
7文字目から12文字目までの"Spacey"を返します。
str_sub("Kevin Spacey", start = 7)
7文字目から最後の文字までの"Spacey"を返します。.
str_sub(Text, start = -6)
最後から6文字目までの"Spacey"を返します。
概要
テキストを小文字に変換します。
シンタックス
str_to_lower(<テキストの列>
, locale = <ロケール>
)
引数
返り値
Character
例
str_to_lower("CALIFORNIA")
"california"を返します。
概要
テキストをタイトルケースに変換します。
シンタックス
str_to_title(<テキストの列>
, locale = <ロケール>
)
引数
返り値
Character
例
str_to_title("CALIFORNIA")
"California"を返します。
概要
テキストを大文字に変換します。
シンタックス
str_to_upper(<テキストの列>
, locale = <ロケール>
)
引数
返り値
Character
例
str_to_upper("california")
"CALIFORNIA"を返します。
str_to_upper("i", locale = "en")
ロケールに”en”を設定すると"I"を返します。
概要
テキストの中にある空白を取り除きます。
シンタックス
str_trim(<テキストの列>
, side = "both"|"left"|"right"
)
引数
返り値
Character
例
str_trim(" String with trailing and leading white space\t")
両端にある空白やタブ文字を取り除き、"String with trailing and leading white space"を返します。
str_trim("\n\nString with trailing and leading white space\n\n")
改行文字を取り除き、"String with trailing and leading white space"を返します。
概要
テキストデータの最初、最後、またはN番目の単語を抽出します。
シンタックス
word(<テキストの列>
, start = <数値>
, end = <数値>
, sep = <区切り文字>
)
引数
返り値
Character
例
word("I am traveling to New York", 1)
1番目の単語である"I"を返します。
word("I am traveling to New York", 1, 3)
1番目から3番目までの単語である"I am traveling"を返します。
word("I am traveling to New York", 2)
2番目の単語である"am"を返します。
word("I am traveling to New York", -1)
最後から1番目の単語である"York"を返します。
word("I am traveling to New York", -2, -1)
最後の2番目から1番目までの単語である"New York"を返します。
word("123-456-789", 1, sep = "-")
1番目の単語である"123"を返します。
概要
欠損しているデータの組み合わせを追加したデータフレームを返します。
シンタックス
complete(<列>
, fill = <リスト>
)
引数
合わせて使われることが多い関数
full_seq, nesting
例
サンプルデータ:
年 | 商品名 | タイプ | 売上 |
---|---|---|---|
2013 | iPhone | 5 | 100 |
2013 | iPad | mini | 50 |
2015 | iPhone | 6 | 200 |
complete(年, 商品)
年と商品の値の全ての組み合わせを返します。
年 | 商品名 | タイプ | 売上 |
---|---|---|---|
2013 | iPad | mini | 50 |
2013 | iPhone | 5 | 100 |
2015 | iPad | NA | NA |
2015 | iPhone | 6 | 200 |
complete(年, 商品, fill = list(売上 = 0))
年と商品の値の全ての組み合わせを返したうえで、NAを0で埋めます。
年 | 商品名 | タイプ | 売上 |
---|---|---|---|
2013 | iPad | mini | 50 |
2013 | iPhone | 5 | 100 |
2015 | iPad | NA | 0 |
2015 | iPhone | 6 | 200 |
complete(年= full_seq(年, period = 1), 商品名) _年と商品の値の全ての組み合わせを返したうえで、掛けている年(2014年)を埋めます。
年 | 商品名 | タイプ | 売上 |
---|---|---|---|
2013 | iPad | mini | 50 |
2013 | iPhone | 5 | 100 |
2014 | iPad | NA | NA |
2014 | iPhone | NA | NA |
2015 | iPad | NA | NA |
2015 | iPhone | 6 | 200 |
complete(年, 商品名, タイプ)
年、商品、タイプの値の全ての組み合わせを返します。
年 | 商品名 | タイプ | 売上 |
---|---|---|---|
2013 | iPad | 5 | NA |
2013 | iPad | 6 | NA |
2013 | iPad | mini | 50 |
2013 | iPhone | 5 | 100 |
2013 | iPhone | 6 | NA |
2013 | iPhone | mini | NA |
2015 | iPad | 5 | NA |
2015 | iPad | 6 | NA |
2015 | iPad | mini | NA |
2015 | iPhone | 5 | NA |
2015 | iPhone | 6 | 200 |
2015 | iPhone | mini | NA |
complete(年, nesting(商品名, タイプ))
nesting()関数を使うことで、指定した列のデータに実際に存在する値の組み合わせを追加できます。
年 | 商品名 | タイプ | 売上 |
---|---|---|---|
2013 | iPad | mini | 50 |
2013 | iPhone | 5 | 100 |
2013 | iPhone | 6 | NA |
2015 | iPad | mini | NA |
2015 | iPhone | 5 | NA |
2015 | iPhone | 6 | 200 |
Summary
Expand a data frame by adding all the combination of given columns.
Syntax
expand(<column(s)>
)
Arguments
Used Together
full_seq, nesting
Example
Sample data:
year | product | type | sales |
---|---|---|---|
2013 | iPhone | 5 | 100 |
2013 | iPad | mini | 50 |
2015 | iPhone | 6 | 200 |
expand(year, product)
Returns all the combinations of year and product values.
year | product |
---|---|
2013 | iPad |
2013 | iPhone |
2015 | iPad |
2015 | iPhone |
expand(year = full_seq(year, period = 1), product)
Returns all the combinations of year and product values plus fill missing years (2014).
year | product |
---|---|
2013 | iPad |
2013 | iPhone |
2014 | iPad |
2014 | iPhone |
2015 | iPad |
2015 | iPhone |
expand(year, product, type)
Returns all the combinations of year, product, and type values.
year | product | type |
---|---|---|
2013 | iPad | 5 |
2013 | iPad | 6 |
2013 | iPad | mini |
2013 | iPhone | 5 |
2013 | iPhone | 6 |
2013 | iPhone | mini |
2015 | iPad | 5 |
2015 | iPad | 6 |
2015 | iPad | mini |
2015 | iPhone | 5 |
2015 | iPhone | 6 |
2015 | iPhone | mini |
expand(year, nesting(product, type))
By using nesting() function you can set a certain combination of column values to be fixed and have them nested inside other columns.
year | product | type |
---|---|---|
2013 | iPad | mini |
2013 | iPhone | 5 |
2013 | iPhone | 6 |
2015 | iPad | mini |
2015 | iPhone | 5 |
2015 | iPhone | 6 |
概要
指定されたテキストから数字のみを抽出します。数値以外のフォーマットがある文字列(例: $1,200.34, -12%, X1)に便利です。
シンタックス
extract_numeric(<列名>
)
返り値
Numeric
例
extract_numeric("$56,500.00")
56500を返します。
extract_numeric("-45%")
-45を返します。
extract_numeric(
列から数字のみを抽出して列として値を返します。
Summary
Fills missing values in using the previous entry. This is convenient especially when values are not presented in some cells to avoid duplicated entries.
Syntax
fill(<column(s)>
, .direction = <fill_direction>
)
Arguments
Example
fill(POPULATION)
Fills using the previous appearing value for POPULATION column.
fill(POPULATION, .direction = "up")
Fills using the next appearing value for POPULATION column.
fill(POPULATION, PRODUCTION)
Fills using the previous appearing value for POPULATION and PRODUCTION columns.
fill(-UNEMPLOYMENT)
Fills using the previous appearing value for all the columns other than UNEMPLOYMENT column.
Summary
Generate a sequence of numbers based on the values in a given column.
Syntax
full_seq(<column_num>
, period = <number>
)
Arguments
Used Together
complete, expand,
Example
Sample data:
year | product | type | sales |
---|---|---|---|
2013 | iPhone | 5 | 100 |
2013 | iPad | mini | 50 |
2015 | iPhone | 6 | 200 |
expand(year = full_seq(year, period = 1), product)
Returns all the combinations of year and product values plus fill missing years (2014).
year | product |
---|---|
2013 | iPad |
2013 | iPhone |
2014 | iPad |
2014 | iPhone |
2015 | iPad |
2015 | iPhone |
Without full_seq() function.
expand(year, product)
Returns all the combinations of year and product values.
year | product |
---|---|
2013 | iPad |
2013 | iPhone |
2015 | iPad |
2015 | iPhone |
Summary
Takes multiple columns and collapses into key-value pairs, duplicating all other columns as needed.
Syntax
gather(<new_key_column>
, <new_value_column>
, <column(s)>
, na.rm = <logical>
, convert = <logical>
)
Arguments
Example
gather(COUNTRY, POPULATION, 2:50, na.rm = FALSE)
Takes the 2nd column to the 50th column into two new columns, COUNTRY and POPULATION.
gather(COUNTRY, POPULATION, -YEAR)
Takes all the columns other than YEAR column into two new columns, COUNTRY and POPULATION.
gather(COUNTRY, POPULATION, starts_with("country"))
Takes the columns whose names start with "country" into two new columns, COUNTRY and POPULATION.
Summary
Nest a set of columns together as a list column.
Syntax
nest(<column(s)>
, .key = <text>
)
Arguments
Example
Sample Data
year | product | type | sales |
---|---|---|---|
2013 | iPhone | 5 | 100 |
2013 | iPad | mini | 50 |
2015 | iPhone | 6 | 200 |
nest(product, type, sales, .key = a)
This will create a new column that is a list of data frames and each row of the data frame holds 'product', 'type', 'sales' values.
year | a |
---|---|
2013 | list() |
2015 | list() |
Summary
Fix multiple columns so that only the combination of actually existing values in those columns will be used for complete() or expand() operation.
Syntax
nesting(<column(s)>
)
Arguments
Used Together
complete, expand,
Example
Sample data:
year | product | type | sales |
---|---|---|---|
2013 | iPhone | 5 | 100 |
2013 | iPad | mini | 50 |
2015 | iPhone | 6 | 200 |
expand(year, nesting(product, type))
By using nesting() function you can set a certain combination of column values to be fixed and have them nested inside other columns.
year | product | type |
---|---|---|
2013 | iPad | mini |
2013 | iPhone | 5 |
2013 | iPhone | 6 |
2015 | iPad | mini |
2015 | iPhone | 5 |
2015 | iPhone | 6 |
Without nesting():
expand(year, product, type)
Returns all the combinations of year, product, and type values.
year | product | type |
---|---|---|
2013 | iPad | 5 |
2013 | iPad | 6 |
2013 | iPad | mini |
2013 | iPhone | 5 |
2013 | iPhone | 6 |
2013 | iPhone | mini |
2015 | iPad | 5 |
2015 | iPad | 6 |
2015 | iPad | mini |
2015 | iPhone | 5 |
2015 | iPhone | 6 |
2015 | iPhone | mini |
Summary
Separates a column with delimited values into multiple columns.
Syntax
separate(<column_text_date>
, into = c("<new_column_name(s)>
"), sep = <text>
, remove=<logical>
, convert=<logical>
, extra = "warn"|"drop"|"merge"
, fill = "warn"|"right"|"left"
)
Arguments
Example
separate(NAME, into = c("FIRSTNAME", "LASTNAME"), extra="drop")
Separates NAME column into FIRSTNAME and LASTNAME columns by non-alphanumeric values. It will drop the rest if any.
separate(NAME, into = c("FIRSTNAME", "LASTNAME"), remove = FALSE)
Separates NAME column into FIRSTNAME and LASTNAME columns by non-alphanumeric values. It will keep NAME column.
separate(NAME, into = c("FIRSTNAME", "LASTNAME"), extra="merge")
Separates NAME column into FIRSTNAME and LASTNAME columns by non-alphanumeric values. It will merge the rest into the last column.
separate(NAME, into = c("FIRSTNAME", "LASTNAME"), sep = "-")
Separates NAME column into FIRSTNAME and LASTNAME columns by dash "-".
separate(NAME, into = c("FIRSTNAME", "LASTNAME"), sep = 2)
Separates NAME column into FIRSTNAME and LASTNAME by a position of 2.
separate(DATE, into = c("Y", "M", "D"), convert = TRUE)
Separate DATE into Year, Month, and Day columns and set the data type for each column based on the heuristics.
Summary
Spread a key-value pair across multiple columns. Missing values will be replaced with NA.
Syntax
spread(<key_column>
, <value_column>
, fill = <value>
, convert = <logical>
, drop = <logical>
, sep=<text>
)
Arguments
Example
spread(COUNTRY, POPULATION)
Spread a COUNTRY-POPULATION pair across multiple columns of COUNTRY.
spread(COUNTRY, POPULATION, fill = “NA")
Spread a COUNTRY-POPULATION pair across multiple columns of COUNTRY, and fill with "NA" text for missing values.
Summary
Unite multiple columns together into one column with given uniting characters. It will concatenate values by “_" and remove the original column by default. Multiple columns specified in the list can be combined together at once.
Syntax
unite(<new_column>
, <column(s)>
, sep = <text>
, remove = <logical>
)
Arguments
Example
unite(NAME, FIRSTNAME, LASTNAME)
Unite FIRSTNAME and LASTNAME into a new column called NAME using _ as a uniting character.
unite(NAME, FIRSTNAME, LASTNAME, sep = "-")
Unite FIRSTNAME and LASTNAME into a new column called NAME using _ as a uniting character.
Summary
Unnest a list column or a list of data frames by making each element of the list to be presented in its own row.
Syntax
unnest(<column_list>
, .drop = <logical>
, .id = <text>
, .sep = <text>
)
Arguments
Example
Sample Data with a list column
issue_id | assignee |
---|---|
720 | list(Kan, Kei) |
721 | list(Kan, Marie, Simon) |
unnest() or unnest(assignee)
Unnest 'assignee' column which is a list. This will give each value of the list its own row.
issue_id | assignee |
---|---|
720 | Kan |
720 | Kei |
721 | Kan |
721 | Marie |
721 | Simon |
Sample Data with a list of Data Frames:
issue_id | assignee |
---|---|
720 | list(name = Kan, id = 105, country = US ) |
721 | list(name = Kei, id = 106, country = Japan ) |
unnest()
Unnest 'assignee' column which is a list of data frames. This will create columns for each column of the nested data frame.
issue_id | name | id | country |
---|---|---|---|
720 | Kan | 105 | US |
721 | Kei | 106 | Japan |
unnest(.sep="-")
Unnest With .sep argument, the result columns are with original list column name connected by .sep argument.
issue_id | assignee-name | assignee-id | assignee-country |
---|---|---|---|
720 | Kan | 105 | US |
721 | Kei | 106 | Japan |
Sample Data with two list columns
issue_id | assignee | category |
---|---|---|
720 | list(Kan, Kei) | list(Critical, Security) |
721 | list(Kan, Marie, Simon) | list(Critical, Minor Issue) |
unnest(assignee, .drop = FALSE)
Unnest 'assignee' column which is a list. This will give each value of the list its own row.
issue_id | assignee | category |
---|---|---|
720 | Kan | list(Critical, Security) |
720 | Kei | list(Critical, Security) |
721 | Kan | list(Critical, Security) |
721 | Marie | list(Critical, Minor Issue) |
721 | Simon | list(Critical, Minor Issue) |
概要
指定したURLからパラメータを削除します。
シンタックス
param_remove(<テキストの列>
, keys = <文字列>
)
引数
返り値
Character
例
param_remove(urls = "https://github.com/hideaki/tam/issues?q=is%3Aopen&ticket=open", keys = c("q","ticket"))
"https://github.com/hideaki/tam/issues" を返します。
概要
指定したURLをデコードします。 文字コードはUTF-8を前提としています。
シンタックス
url_decode(<テキストの列>
)
引数
返り値
Character
例
url_decode("http://exploratory.io%3fname%3dflight%20data%20analysis%20%28V1%29")
"http://exploratory.io?name=flight data analysis (V1)" を返します。
概要
指定したURLをエンコードします。 文字コードはUTF-8を前提としています。
シンタックス
url_encode(<テキストの列>
)
引数
返り値
Character
例
url_encode("http://exploratory.io?name=flight data analysis (V1)")
"http://exploratory.io%3fname%3dflight%20data%20analysis%20%28V1%29" を返します。
概要
url からデコードされたクエリのパラメーターを返します。
シンタックス
url_parameters(<テキストの列>
)
引数
返り値
Character
例
url_parameters("https://exploratory.io/?debug=%3Ctrue%3E#test")
"debug=<true>"を返します。
概要
移動計算により、指定されたウィンドウサイズ間の最大値を返します。
シンタックス
roll_max(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_max(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の最大値を返します。
year | revenue | rolling_max |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 300 |
2014 | 300 | 400 |
2015 | 400 | 500 |
2016 | 500 | 0 |
roll_max(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の最大値を返します。
year | revenue | rolling_max |
---|---|---|
2012 | 100 | 300 |
2013 | 200 | 400 |
2014 | 300 | 500 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の平均値を返します。
シンタックス
roll_mean(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_mean(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の平均値を返します。
year | revenue | rolling_mean |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 200 |
2014 | 300 | 300 |
2015 | 400 | 400 |
2016 | 500 | 0 |
roll_mean(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の平均値を返します。
year | revenue | rolling_mean |
---|---|---|
2012 | 100 | 200 |
2013 | 200 | 300 |
2014 | 300 | 400 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の中央値を返します。
シンタックス
roll_median(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_median(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の中央値を返します。
year | revenue | rolling_median |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 200 |
2014 | 300 | 300 |
2015 | 400 | 400 |
2016 | 500 | 0 |
roll_median(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の中央値を返します。
year | revenue | rolling_median |
---|---|---|
2012 | 100 | 200 |
2013 | 200 | 300 |
2014 | 300 | 400 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の最小値を返します。
シンタックス
roll_min(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_min(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の最小値を返します。
year | revenue | rolling_min |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 100 |
2014 | 300 | 200 |
2015 | 400 | 300 |
2016 | 500 | 0 |
roll_min(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の最小値を返します。
year | revenue | rolling_min |
---|---|---|
2012 | 100 | 100 |
2013 | 200 | 200 |
2014 | 300 | 300 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の積値を返します。
シンタックス
roll_prod(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_prod(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の積値を返します。
year | revenue | rolling_prod |
---|---|---|
2012 | 1 | 0 |
2013 | 2 | 6 |
2014 | 3 | 24 |
2015 | 4 | 60 |
2016 | 5 | 0 |
roll_prod(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の積値を返します。
year | revenue | rolling_prod |
---|---|---|
2012 | 1 | 6 |
2013 | 2 | 24 |
2014 | 3 | 60 |
2015 | 4 | 0 |
2016 | 5 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の標準偏差を返します。
シンタックス
roll_sd(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_sd(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の標準偏差を返します。
year | revenue | rolling_sd |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 100 |
2014 | 300 | 100 |
2015 | 400 | 100 |
2016 | 500 | 0 |
roll_sd(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の標準偏差を返します。
year | revenue | rolling_sd |
---|---|---|
2012 | 100 | 100 |
2013 | 200 | 100 |
2014 | 300 | 100 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の合計値を返します。
シンタックス
roll_sum(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_sum(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の合計値を返します。
year | revenue | rolling_sum |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 600 |
2014 | 300 | 900 |
2015 | 400 | 1200 |
2016 | 500 | 0 |
roll_sum(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の合計値を返します。
year | revenue | rolling_sum |
---|---|---|
2012 | 100 | 600 |
2013 | 200 | 900 |
2014 | 300 | 1200 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
移動計算により、指定されたウィンドウサイズ間の分散を返します。
シンタックス
roll_var(<数値列>
, n = <数値>
, weights = NULL, by = <数値>
, fill = <数値>
, align = <left | center | right>
, normalize = <TRUE|FALSE>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
roll_var(revenue, n = 3, align="center", fill = 0)
NAを0に設定し、前と次の値から始まる3つの値の分散を返します。
year | revenue | rolling_var |
---|---|---|
2012 | 100 | 0 |
2013 | 200 | 10000 |
2014 | 300 | 10000 |
2015 | 400 | 10000 |
2016 | 500 | 0 |
roll_var(revenue, n = 3, align="left", fill = 0)
NAを0に設定し、その値と次の2つ値を含めて、3つの値の分散を返します。
year | revenue | rolling_var |
---|---|---|
2012 | 100 | 10000 |
2013 | 200 | 10000 |
2014 | 300 | 10000 |
2015 | 400 | 0 |
2016 | 500 | 0 |
概要
Removes column(s). It can be used along with any column(s) selection operation like select(), gather(), etc.
シンタックス
-<列名>
返り値
例
select(-Country)
Remove Country column.
select(-starts_with("user"))
Remove all the columns whose names start with "user".
gather(Year, Population, -Country)
Gather all the columns except Country column into Year and Population columns.
Summary
Select column(s) with a predicate (conditional) function.
Syntax
select_if(<predicate_condition>
,...)
Arguments
Example
select_if(is.numeric)
Select only numeric data type columns.
select_if(is.character)
Select only character data type columns.
select_if(function(x) is.numeric(x) && mean(x) > 5)
Select only the columns that are numeric data type and their mean values are greater than 5.
Summary
Returns the column names that starts with a given text.
Syntax
starts_with(<text>
, ignore.case = <logical>
)
Arguments
Example
select(starts_with("X", ignore.case = TRUE))
Select only columns whose name starts with "X"
Summary
Returns the column names that ends with a given text.
Syntax
ends_with(<text>
, ignore.case = <logical>
)
Arguments
Example
select(ends_with("ABR", ignore.case = TRUE))
Select only columns whose name ends with "ABR"
Summary
Returns the column names that contain a given text.
Syntax
contains(<text>
, ignore.case = <logical>
)
Arguments
Example
select(contains("ABR", ignore.case = TRUE))
Select only columns whose name contains with "ABR"
Summary
Returns the column names that matches with a given text.
Syntax
matches(<text>
, ignore.case = <logical>
)
Arguments
Example
select(matches("[:digit:]+", ignore.case = TRUE))
Select only columns whose names contains digits (regular expression)
Summary
Returns the column names that starts with a given text with numbers that are within a given range. It's useful especially when you have column names like X1, X2, X3, X4, etc.
Syntax
num_range(<text>
, <start_num>
:<end_num>
)
Arguments
Example
select(num_range("X", 1:5))
Selects all columns (numerically) from X1 to X5.
Summary
Returns the column names that are any of the given names.
Syntax
any_of(<text1>
, <text2>
, ...)
Arguments
Example
select(any_of("x", "y", "z”))
Selects columns whose names are "x", "y", and "z".
Summary
Returns all the column names. It's useful when you want to have particular column(s) first before everything else.
Syntax
everything()
Arguments
Example
select(X, everything())
Reorder columns: keep the column “X" before all the other columns.
概要
指定した列選択関数(例:is.numeric関数)の戻り値がTRUEとなる列を返します。
シンタックス
where(<列選択関数>
)
引数
例
select(where(is.numeric))
全ての数値列を選択します
概要
summarize_rowなど、他の関数で使用する列を選択するときに利用する関数です。
シンタックス
<単一または複数列>
))<単一または複数列>
))<列選択関数>
))<文字列>
, ignore.case = <TRUEまたはFALSE>
))<文字列>
, ignore.case = <TRUEまたはFALSE>
))<文字列>
, ignore.case = <TRUEまたはFALSE>
))<文字列>
, ignore.case = <TRUEまたはFALSE>
))<文字列>
, <開始>:<終了>
))引数
例
mutate(Total = summarize_row(across(c(個人からの売上, 法人からの売上, 政府からの売上)), sum, na.rm = TRUE)
各行の指定された列の値を合計し、その合計をTotal列に保存します。
mutate(Total = summarize_row(across(where(is.numeric)), sum, na.rm = TRUE)
各行のすべての数値列の値を合計し、その合計をTotal列に保存します。
Summary
Apply functions to all the columns.
Syntax
mutate_all(funs(<function(s)>
), ...)
Arguments
Example
mutate_all(funs(. * 0.5))
Multiply 0.5 to all the column values and override the existing columns.
mutate_all(funs(half = . * 0.5))
Multiply 0.5 to all the column values and create new columns whose names will end with "_half".
mutate_all(funs(min_rank, dense_rank))
Apply min_rank and dense_rank functions to all the column values and create new columns whose names will end with the function name (min_rank, dense_rank).
Summary
Apply functions to specified columns.
Syntax
mutate_at(vars(<column(s)>
), funs(<function(s)>
), ...)
Arguments
Example
mutate_at(vars(ends_with("DELAY")), min_rank)
Apply 'min_rank' function to the columns whose name ending with "DELAY".
mutate_at(vars(ends_with("DELAY")), funs(. * .5))
Multiply 0.5 to the columns whose name ending with "DELAY".
mutate_at(c("ARR_DELAY", "DEP_DELAY"), min_rank)
Apply 'min_rank' function to "ARR_DELAY" and "DEP_DELAY" columns.
mutate_at(c(1,3), min_rank)
Apply 'min_rank' function to 1st and 3rd columns.
Summary
Apply functions to only the columns that match with a given condition.
Syntax
mutate_if(<predicate_condition>
, funs(<function(s)>
), ...)
Arguments
Example
mutate_if(is_numeric, mean)
Apply 'mean' function to all the columns that are numeric data type.
mutate_if(is.numeric, funs(. * 0.2))
Multiply all the numeric columns by 0.2 overriding existing columns.
mutate_if(is.numeric, funs(calc = . * 0.2))
Multiply all the numeric columns by 0.2 as new columns.
Summary
Apply functions to all the columns.
Syntax
summarize_all(funs(<function(s)>
), ...)
Arguments
Example
summarize_all(mean)
Apply mean function to all the columns values per group and override the existing columns.
summarize_all(mean, na.rm = TRUE)
Apply mean function with argument "na.rm = TRUE" to all the columns values per group.
summarize_all(funs(min, max))
Apply min and max functions to all the columns values per group and create new columns.
summarize_all(funs(average = mean), na.rm = TRUE)
Apply mean function to all the columns values per group and create new columns whose names ending with 'average'.
Summary
Apply functions to specified columns.
Syntax
summarize_at(vars(<column(s)>
), funs(<function(s)>
), ...)
Arguments
Example
summarize_at(vars(ends_with("DELAY")), mean)
Apply 'mean' function to the columns whose name ending with "DELAY".
summarize_at(vars(ends_with("DELAY")), mean, na.rm = TRUE)
Apply 'mean' function with "na.rm = TRUE" argument to the columns whose name ending with "DELAY".
summarize_at(c("ARR_DELAY", "DEP_DELAY"), mean)
Apply 'mean' function to "ARR_DELAY" and "DEP_DELAY" columns.
summarize_at(c(1,3), mean)
Apply 'mean' function to 1st and 3rd columns.
Summary
Apply functions to only the columns that match with a given condition.
Syntax
summarize_if(<predicate_condition>
, )
Arguments
Example
summarize_if(is_numeric, mean)
Apply 'mean' function to all the columns that are numeric data type for each group.
Summary
Returns a list of user selected columns.
Syntax
vars(<column(s)>
)
Arguments
Example
vars(starts_with("ARR"))
Select columns whose name starting with "ARR".
vars(ARR_DELAY, ARR_TIME)
Select "ARR_DELAY" and "ARR_TIME" columns.
概要 指定した条件を満たすかどうかに応じて、値を返します。
シンタックス
if_else(<条件>
, <TRUEのときの戻り値>
, <FALSEのときの戻り値>
, missing = NULL)
引数
返り値
Vector
例
mutate(カテゴリー = ifelse(価格 >= 500, "高価", "安価"))
価格 | カテゴリー |
---|---|
1000 | 高価 |
500 | 高価 |
100 | 安価 |
50 | 安価 |
概要
複数の条件にもとづいて値を返します。これはSQLのCASE WHENに似ています。条件とそれに対応する値を指定するために両辺の式を使い、ELSE条件としてTRUEを使用することができます。詳しくは以下の例を参照してください。
シンタックス
case_when(...)
引数
返り値 Vector
例
mutate(カテゴリー = case_when(価格> 900 ~ "超高額", price >= 500 ~ "高額", price >= 100 ~ "普通")))
価格 | カテゴリー |
---|---|
1000 | 超高額 |
500 | 高額 |
100 | 普通 |
50 | NA |
mutate(category = case_when(price > 900 ~ "超高額", price >= 500 ~ "高額", price >= 100 ~ "普通", TRUE ~ "低価格")))
価格 | カテゴリー |
---|---|
1000 | 超高額 |
500 | 高額 |
100 | 普通 |
50 | 低価格 |
概要
欠損値を特定の値または他の列の同じ位置にある値に置き換えます。
シンタックス
coalesce(<欠損値がある列>
, <欠損値を埋めたい列1>
,<欠損値を埋めたい列2>
)
Arguments
返り値
Vector
例
Original data:
price | price_old |
---|---|
1500 | 1000 |
NA | 500 |
NA | 100 |
50 | 10 |
mutate(price = coalesce(price, 0))
price | price_old |
---|---|
1500 | 1000 |
0 | 500 |
0 | 100 |
50 | 10 |
mutate(price = coalesce(price, price_old))
price | price_old |
---|---|
1500 | 1000 |
500 | 500 |
100 | 100 |
50 | 10 |
概要
一致する値をNAに置き換えます。
シンタックス
na_if(<列名>
, <値>
)
引数
返り値 Vector
例
mutate(after = na_if(before, 999))
before | after |
---|---|
A | A |
G | G |
999 | NA |
概要
2つの数値ベクトルを比較します。浮動小数点数の2つのベクトルが(対で)等しいかどうかを比較する安全な方法です。許容誤差が組み込まれている点におい、== を使うよりも安全です。
シンタックス
near(<数値列>
, <数値列>
, tol = <数値>
)
引数
返り値 Logical
例
sqrt(2) ^ 2 == 2 FALSEを返します。
near(sqrt(2) ^ 2, 2) TRUEを返します。
概要
元の値を指定された値で置換します。数値の場合は数値にバックティックをつけるか、その位置に基づいて、置換ができます。文字列の場合は、その名前を置き換えることができます。
シンタックス
recode(<列名>
, ..., .default = <文字列>
, .missing = <文字列>
)
引数
.missing - デフォルトはNULLです。元データの欠損値のときに置換する値を設定できます。
.ordered - デフォルトはFALSEです。順序付きカテゴリーの列を返したいときには、TRUEを指定します。
返り値 Vector
例
元のデータが数値の場合:
ID |
---|
4716 |
4755 |
2432 |
mutate(名称= recode(ID, `4716` = "オラクル", `4755` = "楽天"))
ID | 名称 |
---|---|
4716 | オラクル |
4755 | 楽天 |
2432 | NA |
2432を置換する値の指定がなく、そのデータ型(数値)が他の置換値(文字)とは異なるため、置換値はNAになります。データ型が同じであれば、元の値が利用されます。
mutate(名称 = recode(ID, `4716` = "オラクル", `4755` = "楽天", .default = "不明"))
'.default' の引数を使って、デフォルト値を指定できます。
ID | 名称 |
---|---|
4716 | Oracle |
4755 | Rakuten |
2432 | 不明 |
元のデータが文字列の場合:
ID |
---|
A |
G |
M |
mutate(名称 = recode(ID, "A" = "アップル", "G" = "グーグル"))
ID | 名称 |
---|---|
A | Apple |
G | |
M | M |
元の値の'M'には置換値の指定がありませんが、データ型(文字列)が他の置換値(文字列)と同じであるため、元の値を利用することになります。
mutate(名称 = recode(ID, A = "アップル", G = "グーグル", .default = "不明"))
デフォルト値を設定するには、'.default' 引数を使用します。
ID | name |
---|---|
A | アップル |
G | グーグル |
M | 不明 |
概要
元の値を指定された値で置換し、順序付きカテゴリの列を作成します。数値の場合、値にバックティックを付けるか、その位置にもとづいて置き換えることができ、文字列は、その名称をもとに置き換えることができます。
シンタックス
recode_factor(<列名>
, ..., .default = <文字列>
, .missing = <文字列>
, .ordered = <TRUE|FALSE>
)
引数
.default - デフォルトはNULLです。一致する値がない場合のデフォルト値を設定します。指定がない場合、置換後の値が元の値と同じデータ型のときには元の値を使用し、元の値とデータ型が異なる場合は NA で置換します。
.missing - デフォルトはNULLです。元の値が欠損値のときの値を設定します。
.ordered - デフォルトはFALSEです。順序付きカテゴリーを返したいときには、TRUEを指定します。
返り値 Factor
例
Original Data:
ID |
---|
M |
T |
S |
mutate(名称 = recode_factor(ID, S = "日曜日", M = "月曜日", T = "火曜日", .ordered = TRUE))
ID | name |
---|---|
M | 月曜日 |
T | 火曜日 |
S | 日曜日 |
Summary
Separates a column with delimited values into multiple rows.
Syntax
separate_rows(<column_text_date>
, sep = <text>
, convert=<logical>
)
Arguments
Example
Original data:
company | investors |
---|---|
Uber | Lowercase Capital, Benchmark Capital, Google Ventures |
Xiaomi | Digital Sky Technologies, QiMing Venture Partners, Qualcomm Ventures |
seperate_rows(investors, sep=", ")
company | investors |
---|---|
Uber | Lowercase Capital |
Uber | Benchmark Capital |
Uber | Google Ventures |
Xiaomi | Digital Sky Technologies |
Xiaomi | QiMing Venture Partners |
Xiaomi | Qualcomm Ventures |
Summary
Unnest a list column by turning each element of a list-column into a column.
Syntax
unnest_wider(col = <column_list>
, names_sep = <text>
, names_repair = <text>
, simplify = <logical>
, ptype = <list>
, transform = <list>
)
Arguments
names_repair (Optional) - Used to check that output data frame has valid names. Must be one of the following options
simplify (Optional) - If TRUE, will attempt to simplify lists of length-1 vectors to an atomic vector.
ptype (Optional) - A named list of prototypes declaring the desired output type of each component. Use this argument if you want to check each element has the types you expect when simplifying.
transform (Optional) - A named list of transformation functions applied to each component. Use this function if you want transform or parse individual elements as they are hoisted.
Summary
Unnest a list column by turning each element of a list-column into a row.
Syntax
unnest_longer(col = <column_list>
, values_to = <text>
, indices_to = <text>
, indices_include = <logical>
, names_repair = <text>
, simplify = <logical>
, ptype = <list>
, transform = <list>
)
Arguments
names_repair (Optional) - Used to check that output data frame has valid names. Must be one of the following options
simplify (Optional) - If TRUE, will attempt to simplify lists of length-1 vectors to an atomic vector.
ptype (Optional) - A named list of prototypes declaring the desired output type of each component. Use this argument if you want to check each element has the types you expect when simplifying.
transform (Optional) - A named list of transformation functions applied to each component. Use this function if you want transform or parse individual elements.
Hoist allows you to selectively pull components of a list-column out in to their own top-level columns.
Syntax
hoist(.col = <column_list>
, .remove = <logical>
, .simplify = <logical>
, .ptype = <list>
, .transform=<list>
)
Arguments
Summary
Drop rows that have NA value.
Syntax
drop_na(<column(s)>
,...)
drop_na(-<column(s)>
,...)
drop_na(starts_with(<text>
, ignore.case = <logical>
))
drop_na(ends_with(<text>
, ignore.case = <logical>
))
drop_na(contains(<text>
, ignore.case = <logical>
))
drop_na(matches(<text>
, ignore.case = <logical>
))
drop_na(num_range(<text>
, <start_num>:<end_num>
))
drop_na(one_of(<text1>
, <text2>
, ...))
drop_na(<column>
, everything())
Arguments
Example
Sample data:
Original data:
location | year | plant_date | harvest_date |
---|---|---|---|
Als | 1900 | NA | 35.02899 |
Als | 1901 | 10.00000 | 24.02899 |
Als | 1902 | 12.58863 | 45.02899 |
Bea | 1900 | 5.00000 | 18.00000 |
Bea | 1901 | 3.31119 | 10.00000 |
Bea | 1902 | 29.12891 | NA |
Bor | 1900 | 12.52136 | 18.14896 |
Bor | 1901 | NA | 10.64896 |
Bor | 1902 | 10.23056 | 20.64896 |
drop_na(ends_with("date"))
Returns a data frame without NA values in plant_date and harvest_date columns.
location | year | plant_date | harvest_date |
---|---|---|---|
Als | 1901 | 10.00000 | 24.02899 |
Als | 1902 | 12.58863 | 45.02899 |
Bea | 1900 | 5.00000 | 18.00000 |
Bea | 1901 | 3.31119 | 10.00000 |
Bor | 1900 | 12.52136 | 18.14896 |
Bor | 1902 | 10.23056 | 20.64896 |
Summary
Add rows with given column values.
Syntax
add_row()
Arguments
Return Value
Data Frame
Example
Original Data:
ID | name |
---|---|
4716 | Oracle |
4755 | Rakuten |
2432 | DeNA |
add_row(ID = 4689)
ID | name |
---|---|
4716 | Oracle |
4755 | Rakuten |
2432 | DeNA |
4689 | NA |
add_row(ID = 4689, name = "Yahoo")
ID | name |
---|---|
4716 | Oracle |
4755 | Rakuten |
2432 | DeNA |
4689 | Yahoo |
概要
文字列などを除いた上で数値のみを抽出し、Numeric(数値)型に変換します。
シンタックス
parse_number(<列名>
, na = c("", "NA"), locale = <ロケール>
)
引数
返り値
Numeric
例
parse_number("12345")
12345を返します。
parse_number("12345.10")
12345.1を返します。
parse_number("$12,345.10")
12345.1を返します。
parse_number("$12.20M")
12.2を返します。
parse_number(as.Date("2015-01-30") - as.Date("2015-01-15"))
15を返します。
概要
データをDouble(倍精度浮動小数点数)型に変換します。
シンタックス
parse_double(<列名>
, na = c("", "NA"), locale = <ロケール>
)
引数
返り値
Double
例
parse_double("12345")
12345を返します。
parse_double("12345.10")
12345.1を返します。
概要
データをDouble(倍精度浮動小数点数)型に変換します。
シンタックス
parse_euro_double(<列名>
, na = c("", "NA"))
引数
返り値
Double
例
parse_euro_double("12345")
12345を返します。
parse_euro_double("12345.10")
12345.1を返します。
概要
データをInteger(整数)型に変換します。
シンタックス
parse_integer(<列名>
, na = c("", "NA"), locale = <ロケール>
)
引数
返り値
Integer
例
parse_integer("12345")
12345を返します。
parse_integer("12345.10")
12345を返します。
概要
データをTime(時間)型に変換します。
シンタックス
parse_time(<列名>
, format = <時間のフォーマット>
, locale = <ロケール>
)
引数
返り値
time
例
parse_time("13:10:05")
"13:10:05"を返します。
parse_time("13:10:05", locale = locale(tz = "America/Los_Angeles"))
"13:10:05"を返します。
parse_time("10:20:15 PM")
"22:20:15"を返します。
parse_time("10:20:15 午後", local = locale("ja"))
"22:20:15"を返します。
概要
データをCharacter(文字列)型に変換します。
シンタックス
parse_character(<列名>
, na = c("", "NA"), locale = <ロケール>
)
引数
返り値
Character
例
parse_character(123.11)
文字列型として"123.11"を返します。
概要
データをFactor(順序付きカテゴリー)型に変換します。
シンタックス
parse_factor(x, levels = c("値1", "値2", ...), na = c("", "NA"), locale = <ロケール>
)
引数
返り値
Factor
例
columnA - "iMac", "iPod", "iPhone", "iPod", "iPhone"
parse_factor(columnA)
データとしてはiMac, iPod, iPhone, iPod, iPhoneを返しますが、レベルとしては出現順であるiMac, iPod, iPhoneを返します。
概要
データをLogical(論理値)型に変換します。
シンタックス
parse_logical(<列名>
, na = c("", "NA"), locale = <ロケール>
)
引数
返り値
Logical
例
parse_logical("TRUE")
TRUEを返します。
parse_logical("T")
TRUEを返します。
概要
Heuristically guess the data type for each column by reading the first 1000 rows, parse the data, and set appropriate data types for all the columns of the data frame.
シンタックス
type_convert()
引数
返り値
Data Frame
例
type_convert()
概要
年、月の順番の文字列または数値データを日付型に変換します。
シンタックス
ym(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
)
引数
返り値
Date
例
ym("2015-10")
"2015-10-01"を返します。
ym("2015/10")
"2015-10-01"を返します。
ym("Created on 2015 10")
"2015-10-01"を返します。
ym("2015, Oct", locale = "English")
"2015-10-01"を返します。
概要
月、年の順番の文字列または数値データを日付型に変換します。
シンタックス
my(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
)
引数
返り値 Date
例
my("01-2015")
"2015-01-01"を返します。
my("01/2015")
"2015-01-01"を返します。
my("Created on 1 2015")
"2015-01-01"を返します。
my("Oct, 2015", locale = "English")
"2015-10-01"を返します。
概要
年と四半期の文字列データを日付型に変換します。
シンタックス
yq(<列名>
, tz = <タイムゾーン>
, locale = <ロケール>
)
引数
返り値
Date
例
yq("2016.2")
"2016-04-01"を返します。
yq("2016-03")
"2016-07-01"を返します。
概要
年の週番号を抽出します。週の開始曜日は日曜日になっています。
シンタックス
epiweek(<日付列>
)
返り値
Numeric
例
epiweek(ymd(c( \
"2020-01-01",\
"2020-01-02",\
"2020-01-03",\
"2020-01-04",\
"2020-01-05",\
"2020-01-06",\
"2020-01-07",\
"2020-01-08")))\
1,1,1,1,2,2,2,2を返します。 (2020-01-05が日曜日です)
概要
POSIXct型の列をDate型に変換できます。
シンタックス
as_date(<日付時間型の列>
)
引数
返り値
Date
例
as_date(ymd_hms("2015-10-10 13:10:05"))
"2015-10-10"を返します。
概要
データをPOSIXct型に変換します。
シンタックス
as_datetime(<日付>
, format = <date_time_format>
, tz = <タイムゾーン>
, origin = <text>
)
引数
返り値
POSIXct
例
as_datetime("2015-10-10 13:10:05")
"2015-10-10 13:10:05 PDT"を返します。
as_datetime("2015-10-10 13:10:05", tz = "America/Los_Angeles")
"2015-10-10 13:10:05 PDT"を返します。
as.as_datetime("2015-10-10 13:10:05", tz = "Asia/Tokyo")
"2015-10-10 13:10:05 JST"を返します。
as_datetime("05-10-15T13:10:05", format = "%d-%m-%yT%H:%M")
"2015-10-05 13:10:00 PDT"を返します。
概要
テキストの文字数が指定された数になるように、テキストを切り捨てます。
シンタックス
str_trunc(<テキストの列>
, width = <数値>
, side = "right"|"left"|"center"
, ellipsis = <文字>
)
引数
返り値
Character
例
str_trunc("Exploratory", 6)
"Exp..."を返します。
str_trunc("Exploratory", 6, side = "left")
"...ory"を返します。
概要
指定した文字列または正規表現に一致する文字列を取り除きます。
シンタックス
str_remove(<テキストの列>
, <pattern>
)
引数
返り値
Character
例
str_remove("I am traveling to New York!!", "New")
"New"を取り除き"I am traveling to York!!"を返します。
概要
指定した文字列または正規表現に一致する文字列をすべて取り除きます。
シンタックス
str_remove_all(<テキストの列>
, <pattern>
)
引数
返り値
Character
例
str_remove_all("I am traveling to New York and New Jersey!!", "New")
すべての"New"を取り除き"I am traveling to York and Jersey!!"を返します。
概要
文章から単語を取り除きます。
シンタックス
str_remove_word(<テキストの列>
, start = <数値>
, end = <数値>
, sep = <区切り文字>
)
引数
注意: 現在は最初と最後の単語の削除のみ機能しています。
返り値
Character
例
str_remove_word("I am traveling to New York!!", start = 1)
"am traveling to York!!"を返します。
概要
文章にある単語を指定して単語に置換します。
シンタックス
str_replace_word(<テキストの列>
, start = <数値>
, end = <数値>
, sep = <区切り文字>
, rep = <置換する文字列>
)
引数
注意: 現在は最初と最後の単語の置換のみ機能しています。
返り値
Character
例
exploratory::str_replace_word("I am traveling to New York", start = -1, sep = " ", rep = "England")
"I am traveling to New England"を返します。
概要
指定した文字の範囲内に含まれる文字を取り除きます。
シンタックス
str_remove_inside(<テキストの列>
, begin = <開始文字>
, end = <終了文字>
, all = <TRUE|FALSE>
, include_special_chars = <TRUE|FALSE>
)
引数
返り値
Character
例
exploratory::str_remove_inside("I am traveling to New York (2020)", begin = "(", end = ")")
括弧で囲われた文字を削除し、"I am traveling to New York "を返します。
概要
指定した文字の範囲内に含まれる文字を置換します。
シンタックス
str_replace_inside(<テキストの列>
, begin = <開始文字>
, end = <終了文字>
, rep = <置換する文字>
, all = <TRUE|FALSE>
, include_special_chars = <TRUE|FALSE>
)
引数
返り値
Character
例
exploratory::str_replace_inside("I am traveling to New (York)", begin = "(", end = ")", rep = "England")
括弧で囲われた文字を"England"に置き換えた"I am traveling to New England"を返します。
概要
文字列の中にあるURLを取り除きます。
シンタックス
str_remove_url(<テキストの列>
, position = <start/end/any>
)
引数
返り値
Character
例
str_remove_url("I am traveling to New York http://例.com", position = "any")
"I am traveling to New York "を返します。
概要
文字列の中のURLを指定したテキストに置換します。
シンタックス
str_replace_url(<テキストの列>
, rep = <テキスト>
)
引数
返り値
Character
例
str_replace_url("I am traveling to New http://例.com/ny", rep = "York")
"I am traveling to New York"を返します。
概要
文字列の中からURLを抽出します。
シンタックス
str_extract_url(<テキストの列>
)
返り値
Character
例
str_extract_url("I am traveling to New http://例.com/ny")
"http://例.com/ny"を返します。
概要
文字列の中から絵文字を取り除きます。
シンタックス
str_remove_emoji(<テキストの列>
)
返り値
Character
例
str_remove_emoji("I am traveling to New York 🤩")
"I am traveling to New York "を返します。
Summary
Returns a summary information of a given model in a tidy (normalized data frame) format.
Syntax
model_info(<column_list>
, output = <model_info_output_type>
, ...)
Arguments
* output (Optional) - The default is "summary". This changes the type of output. Can be one of the following.
Returned Values
Example
Following examples assumes that 'model' column contains a fitted model of 'lm' by do() command.
model_info(model, output = "summary")
r.squared | adj.r.squared | sigma | statistic | p.value | df | logLik | AIC | BIC | deviance | df.residual |
---|---|---|---|---|---|---|---|---|---|---|
0.8879 | 0.8879 | 13.0886 | 1716441.58 | 0 | 3 | -1729152.62 | 3458313.24 | 3458357.15 | 74228528.48 | 433295 |
model_info(model, output = "variables")
term | estimate | std.error | statistic | p.value |
---|---|---|---|---|
(Intercept) | -3.0966 | 0.0341 | -90.749 | 0 |
2 DEP_DELAY | 1.003 | 0.0005 | 1851.9463 | 0 |
3 DISTANCE | -0.0037 | 0 | -114.3364 | 0 |
model_info(model, output = "data")
.rownames | ARR_DELAY | DEP_DELAY | .fitted | .se.fit | .resid | .hat | .sigma | .cooksd | .std.resid |
---|---|---|---|---|---|---|---|---|---|
1 | -15 | -9 | -13.934 | 0.0247 | -1.066 | 0.0000035503 | 13.0886 | 7.8503e-9 | -0.0814 |
2 | -28 | -19 | -22.4116 | 0.035 | -5.5884 | 0.0000071333 | 13.0886 | 4.3348e-7 | -0.427 |
概要
指定されたデータをhms型のデータに変換します。Hms,difftimeの値を計算で使う際には秒単位で処理されます。
シンタックス
as.hms(<列名>
)
引数
返り値
hms
例
as.hms(20)
00:00:20を返します。
概要
指定したオブジェクトがhms型の場合はTRUEを返します。
シンタックス
is.hms(<列名>
)
引数
返り値
Logical
例
mutate_if(is.hms, as.character)
hms型の列をCharacter型(文字列型)に変換します。
概要
Remove rows whose column values are all NAs.
シンタックス
remove_empty_rows()
例
Original data:
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
NA | NA |
carrot | 2 |
apple | 2 |
NA | NA |
orange | 3 |
NA | 3 |
remove_empty_rows()
Returns the data without all NA rows.
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
NA | 3 |
概要
Remove columns whose values are all NAs.
シンタックス
remove_empty_cols()
例
Original data:
item_name | transaction_id | tag |
---|---|---|
banana | 1 | NA |
apple | 1 | NA |
carrot | 2 | NA |
apple | 2 | NA |
orange | 3 | NA |
NA | 3 | NA |
remove_empty_cols()
Returns the data without all NA columns.
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
NA | 3 |
概要
Make column names clean by using only _ character, lowercase letters, and numbers.
シンタックス
clean_names()
例
Original data:
Item Name | .transaction |
---|---|
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
NA | 3 |
clean_names()
Returns data with clean column names.
item_name | _transaction |
---|---|
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
NA | 3 |
概要
Get rows that are duplicated.
シンタックス
get_dupes(<column(s)>
)
例
Original data:
name | n |
---|---|
banana | 1 |
apple | 1 |
apple | 1 |
apple | 2 |
get_dupes(name)
Returns rows that are duplicated in name column.
name | n |
---|---|
apple | 1 |
apple | 1 |
apple | 2 |
get_dupes()
Returns rows that are duplicated in all columns.
name | n |
---|---|
apple | 1 |
apple | 1 |
概要
Excelの日付の数値(例: 42370)を日付型(例: 2016-01-01)に変換します。
シンタックス
excel_numeric_to_date(<数値列>
, date_system = "modern"|"mac pre-2011"
)
引数
例
元のデータ:
user | last_login |
---|---|
Lisa | 42370 |
Emily | 42318 |
John | 42489 |
excel_numeric_to_date(last_login) Excelの日付の数値を日付型に変換した下記の結果を返します。
user | last_login |
---|---|
Lisa | 2016-01-01 |
Emily | 2015-11-10 |
John | 2016-04-29 |
返り値
Date
概要
Convert specific values to NA.
シンタックス
convert_to_NA(strings = <character_vector>
)
Arguments
例
Original data:
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
-99 | -99 |
carrot | 2 |
apple | 2 |
-99 | -99 |
orange | 3 |
-99 | -99 |
convert_to_NA("-99")
Convert -99 to NA even if it's numeric.
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
NA | NA |
carrot | 2 |
apple | 2 |
NA | NA |
orange | 3 |
NA | NA |
概要
Create frequency table.
シンタックス
tabyl(
Arguments
例
Original data:
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
NA | NA |
carrot | 2 |
apple | 2 |
NA | NA |
orange | 3 |
NA | 3 |
tabyl(item_name)
Show ratio of item_name with NA and without it.
item_name | n | percent | valid_percent |
---|---|---|---|
apple | 1 | 0.125 | 0.2 |
apple | 1 | 0.125 | 0.2 |
banana | 1 | 0.125 | 0.2 |
carrot | 1 | 0.125 | 0.2 |
orange | 1 | 0.125 | 0.2 |
NA | 3 | 0.375 | NA |
概要
指定した列を順序付きカテゴリーの列に変換します。標準搭載のbase関数のas.factor との違いは、出現する順序でレベルを作成する点です。またすべてのプラットフォームで同じ挙動です。 (base関数はロケールでソートするため、環境に応じて結果が変わる可能性があります)
シンタックス
as_factor(<列名>
)
引数
例
x <- c("FR", "US", "JP")
as_factor(x)
指定したFR, US, JPの順序でカテゴリーを返します。
概要 順序付きカテゴリーのレベルを匿名化し、任意の数値に置き換えます。値もレベルの順序も保持されません。
シンタックス
fct_anon(<列名>
, prefix = <文字列>
)
引数
例
x <- factor(c("FR", "US", "JP"))
fct_anon(x)
1, 2, 3という順序付きカテゴリーの値が返ります。.
概要
ファクター型の列にレベルを追加します。
シンタックス
fct_expand(<列名>
, <文字列>
)
引数
例
x <- factor(c("FR", "US"))
fct_expand(x, "JP", "CA")
ファクター型の列にレベルが追加され、FR US JP CAの値が返ります。
概要
ファクター型の列から不要なレベルを削除します。
シンタックス
fct_drop(<列名>
, only = <文字列>
)
引数
例
x <- factor(c("FR", "US"), levels = c("FR", "US", "JP", "CA"))
fct_drop(x)
FR, USという順序付きのカテゴリーが返ります。
fct_drop(x, only = "CA")
FR, US, JPという順序付きのカテゴリーが返ります。
概要
欠損値にレベルが与えられ、欠損値がカテゴリーとして確実にチャートで表示されるようになります。
シンタックス
fct_explicit_na(<列名>
, na_level = <文字列>
)
引数
例
x <- factor(c("FR", NA, "US", NA, "JP"))
fct_explicit_na(x, "値なし")
FR, 値なし, US, 値なし, JPという値があり、FR JP US 値なしの順でレベルが設定されます。
概要
データタイプをfactor型にし、値の出現頻度に応じて、出現頻度が低い値を「Other」グループにします。
シンタックス
fct_lump(<列>
, n = <残すカテゴリー数>
, prop = <数値>
, other_level = <テキスト>
, ties.method = <メソッドのタイプ>
, w = <数値列>
)
引数
引数のnとpropの両方が指定されていない場合、fct_lumpは最も頻度の低い値を「Other」グループにまとめ、「Other」は最小のレベルとなります。
例
fct_lump(国, n = 10)
これにより、最も頻度の高い10カ国を保持し、それ以外の国をまとめた「Other」グループが作成されます。
fct_lump(国, prop = .1)
これにより、行の数における国の割合が10%以上の国のみを保持し、10%未満の国をまとめた「その他」グループが作成されます。
fct_lump(国, n = 5, w = 売上)
これにより、各国の売上の合計として計算される最大の重みを持つ5つ国のみを保持し、それ以外の国をまとめた「Other」グループが作成されます。
概要
指定した値を「Other」グループにまとめる、または指定した値以外を「Other」グループにまとめることができます。
シンタックス
fct_other(<列>
, keep = c("<値(複数)>
"), drop = c("<値(複数)>
"), other_level = <テキスト>
)
引数
例
fct_other(国, keep = c("日本", "アメリカ", "イギリス")
これにより、国の列では日本、アメリカ、イギリスのみを保持し、それ以外の国を「Other」グループにまとめます。
fct_other(国, drop = c("日本", "アメリカ", "イギリス")
これにより、国の列では日本、アメリカ、イギリスを「Other」グループにまとめ、それ以外の国を保持します。
概要
元のデータ順に基づき値に順序をつけ、データタイプをfactor型に変換します。
シンタックス
fct_inorder(<factor型にしたい列>
, ordered = <logical>
)
引数
例
x <- c("FR", "US", "US", "JP", "US", "JP") -- it can be used for Character data type column.
fct_inorder(x)
データタイプをfactor型に変え、値の出現順が先であるFR, US, JPの順で順序がつけられます。
概要
値の頻度をもとに順序をつけ、データタイプをfactor型に変換します。
シンタックス
fct_infreq(<factor型にしたい列>
, ordered = <TRUE/FALSE>
)
引数
例
x <- c("FR", "US", "US", "JP", "US", "JP") -- it can be used for Character data type column.
fct_infreq(x)
データタイプをfactor型に変え、値の頻度が多いUS,JP,FRの順で順序がつけられます。
概要
値の順序を指定し、データタイプをfactor型に変換します。
シンタックス
fct_relevel(<factor型にしたい列>
, ...)
引数
例
x <- c("France", "Japan", "Australia", "United States") -- character型の列を作成。
fct_relevel(x, "Japan")
Japan, Australia, France, United Statesの順で結果が返されます.元のデータタイプがCharacter型の場合は、指定した"Japan"以外は、アルファベット順で値の順序がつけられます。
x <- factor(level = c("France", "Japan", "Australia", "United States")) -- 順序を持つfactor型の列を作成。
fct_relevel(x, "Japan")
Japan, France, Australia, United Statesの順で結果が返されます。元のデータタイプがfactor型の場合は、指定した"Japan"以外は、元々の順序がつけられます。
x <- factor(level = c("France", "Japan", "Australia", "United States")) -- 順序を持つfactor型の列を作成。
fct_relevel(x, "Japan", "United States")
Japan, United States, France, Australiaの順で結果が返されます。
概要
別の列のソートした値に基づいて値の順序を設定し、データタイプをfactor型に変換します。
シンタックス
fct_reorder(<factor型にしたい列>
, <数値列>
, .fun = <集計関数>
, ..., .desc = <TRUE/FALSE>
)
引数
例
mutate(Country = fct_reorder(Country, Sales))
Country列をfactor型に変え、Salesの値に基づいて順序を設定します。引数を設定していないため、Salesの中央値(median)の昇順でソートした値で順序が付けられます。
mutate(Country = fct_reorder(Country, Sales, .desc = TRUE))
Country列をfactor型に変え、さらにSalesの中央値(median)の降順に基づいて順序を設定します。
mutate(Country = fct_reorder(Country, Sales, .fun = sum, .desc = TRUE, na.rm = TRUE))
Country列をfactor型に変え、さらにSalesの合計値(sum)の降順に基づいて順序を設定します。na.rm = TRUEの引数は、集計関数を使う際に欠損値を除いた上で計算を行うことができます。
概要
factor型の列のレベルを反転させます。
シンタックス
fct_rev(<factor型の列>
)
Arguments
例
x <- factor(c("FR", "US", "JP"))
レベルがFR, JP, USの順序であるfactor型の列が作成されます。
fct_rev(x)
順序を反転させたUS, JP, FRの順で順序を付けることができます。
Summary
Create extreme gradient boosting model for regression.
Syntax
xgboost_reg(watchlist_rate = <numeric>
, output_type = <xgb_reg_output_type>
, nrounds = <integer>
, booster = <xgboost_booster_type>
, eval_metric = <xgb_reg_evaluation_type>
, weight = <column_num>
, early_stopping_rounds = <integer>
)
Arguments
Return Value
Model
Example
Original data:
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | 30 | 1000 |
UA | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | 3 | 700 |
AA | 10 | 8 | 1000 |
%>% group_by(CARRIER)
%>% build_model(model_func = xgboost_reg, formula = DEP_DELAY ~ ARR_DELAY + DISTANCE, test_rate = 0.1)
Returns a data frame that stores a xgb.Booster model based on a formula defined as 'Predict DEP_DELAY based on ARR_DELAY and DISTANCE.' It also returns a column of original data.
CARRIER | source_data | model | .test_index |
---|---|---|---|
UA | source dataframe | xgb.Booster model | c(1) |
AA | source dataframe | xgb.Booster model | c(2) |
You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction function to predict with the data that is stored in the same data frame.
Summary
Create extreme gradient boosting model for binary classification.
Syntax
xgboost_binary(watchlist_rate = <numeric>
, output_type = <xgb_binary_output_type>
, nrounds = <integer>
, booster = <xgboost_booster_type>
, eval_metric = <xgb_binary_evaluation_type>
, weight = <column_num>
, early_stopping_rounds = <integer>
)
Arguments
Return Value
Model
Summary
Create extreme gradient boosting model for binary classification.
Syntax
xgboost_multi(watchlist_rate = <numeric>
, output_type = <xgb_multi_output_type>
, nrounds = <integer>
, booster = <xgboost_booster_type>
, eval_metric = <xgb_multi_evaluation_type>
, weight = <column_num>
, early_stopping_rounds = <integer>
)
Arguments
Return Value
Model
Example
Summary
Create random forest model for regression.
Syntax
randomForestReg(subset = <column_logical>
, na.action = <'na_action_type'>
, ntree = <integer>
, mtry = <numeric>
, replace = <logical>
, strata = <column>
, sampsize = <integer>
, nodesize = <integer>
, maxnodes = <integer>
, importance = <logical>
, localImp = <logical>
, nPerm = <integer>
, proximity = <logical>
, oob.prox = <logical>
, keep.forest = <logical>
, corr.bias = <logical>
, keep.inbag = <logical>
)
Arguments
Return Value
Model
Example
Summary
Create random forest model for binary classification.
Syntax
randomForestReg(subset = <column_logical>
, na.action = <'na_action_type'>
, ntree = <integer>
, mtry = <numeric>
, replace = <logical>
, classwt = <numeric>
, cutoff = <numeric>
, strata = <column>
, sampsize = <integer>
, nodesize = <integer>
, maxnodes = <integer>
, importance = <logical>
, localImp = <logical>
, nPerm = <integer>
, proximity = <logical>
, oob.prox = <logical>
, norm.votes = <logical>
, keep.forest = <logical>
, corr.bias = <logical>
, keep.inbag = <logical>
)
Arguments
Return Value
Model
Example
Summary
Create random forest model for multi class classification.
Syntax
randomForestReg(subset = <column_logical>
, na.action = <'na_action_type'>
, ntree = <integer>
, mtry = <numeric>
, replace = <logical>
, classwt = <numeric>
, cutoff = <numeric>
, strata = <column>
, sampsize = <integer>
, nodesize = <integer>
, maxnodes = <integer>
, importance = <logical>
, localImp = <logical>
, nPerm = <integer>
, proximity = <logical>
, oob.prox = <logical>
, norm.votes = <logical>
, keep.forest = <logical>
, corr.bias = <logical>
, keep.inbag = <logical>
)
Arguments
Return Value
Model
Example
概要
リスト内のデータがデータフレームの場合、位置または名前をもとにリストのデータ型の列の値を抽出します。
シンタックス
list_extract(<リストの列>
, position = <数値>
, rownum = <数値>
)
引数
返り値
Character
例
1) 列は文字列のリストの場合
mutate(テキスト= list_extract(カテゴリー, 1))
以下の結果を返します。
カテゴリー | テキスト |
---|---|
c("Doctors", "Health & Medical") | Doctors |
c("Bars", "American (New)", "Nightlife") | Bars |
mutate(テキスト = list_extract(カテゴリー, -1))
最後から1番目の要素の値を返します。
カテゴリー | テキスト |
---|---|
c("Doctors", "Health & Medical") | Health & Medical |
c("Bars", "American (New)", "Nightlife") | Nightlife |
2) 列がデータフレームのリストの場合
mutate(テキスト = list_extract(ラベル, 1))
1列目と1行目の値を返します。指定がない場合、デフォルトで1行目の値を返します。
ラベル | テキスト |
---|---|
list(name = c("Regression", "UI"), color = c("5319e7", "207de5")) | Regression |
mutate(テキスト = list_extract(ラベル, -1))
最後の列と最初の行の値を返します。
ラベル | テキスト |
---|---|
list(name = c("Regression", "UI"), color = c("5319e7", "207de5")) | 5319e7 |
mutate(text = list_extract(labels, 1, 2))
1列目の2行目の値を返します。
ラベル | テキスト |
---|---|
list(name = c("Regression", "UI"), color = c("5319e7", "207de5")) | UI |
mutate(text = list_extract(labels, "name"))
列「name」と最初の行の値を返します。 指定がない場合、デフォルトは 1 行目の値を返します。
ラベル | テキスト |
---|---|
list(name = c("Regression", "UI"), color = c("5319e7", "207de5")) | Regression |
概要
リストデータ型の列のすべての要素のテキストを連結します。
シンタックス
list_to_text(<リストの列>
, sep = <文字列>
)
引数
返り値
character
例
mutate(カテゴリーのテキスト = list_to_text(カテゴリー))
以下の結果を返します
カテゴリー | カテゴリーのテキスト |
---|---|
c("Doctors", "Health & Medical") | Doctors, Health & Medical |
Nightlife | Nightlife |
c("Active Life", "Mini Golf", "Golf") | Active Life, Mini Golf, Golf |
c("Bars", "American (New)", "Nightlife") | Bars, American (New), Nightlife |
c("Bars", "American (Traditional)", "Nightlife") | Bars, American (Traditional), Nightlife |
概要
複数の列の値をリストとして連結します。
シンタックス
list_concat(<列名>
, collapse = <TRUE|FALSE>
)
引数
返り値
list
例
mutate(連結した項目 = list_concat(項目1, 項目2))
以下の結果を返します。
Before:
名前 | 項目1 | 項目2 |
---|---|---|
Cathy | c("Banana", "Apple") | "Apple" |
Mary | "Lemon" | c("Lemon", "Banana") |
Lisa | c("Lemon", "Banana") | c("Banana", "Apple") |
After:
名前 | 項目1 | 項目2 | 連結した項目 |
---|---|---|---|
Cathy | c("Banana", "Apple") | "Apple" | c("Banana", "Apple", "Apple") |
Mary | "Lemon" | c("Lemon", "Banana") | c("Lemon", "Lemon", "Banana") |
Lisa | c("Lemon", "Banana") | c("Banana", "Apple") | c("Lemon", "Banana", "Banana", "Apple") |
summarize(カテゴリー = list_concat(カテゴリー, collapse = TRUE))
以下の結果を返します。
Before:
"地域"でグループ化
地域 | カテゴリー |
---|---|
East | c("Doctors", "Health & Medical") |
East | Nightlife |
East | c("Active Life", "Mini Golf", "Golf") |
West | c("Bars", "American (New)", "Nightlife") |
West | c("Bars", "American (Traditional)", "Nightlife") |
After:
region | カテゴリー |
---|---|
East | c("Doctors", "Health & Medical", "Nightlife", "Active Life", "Mini Golf", "Golf") |
West | c("Bars", "American (New)", "Nightlife", "Bars", "American (Traditional)", "Nightlife") |
概要
行ごとにリストデータ型の列内の要素の数を返します。
シンタックス
list_n(<リスト型の列>
)
引数
返り値
Numeric
例
mutate(要素数 = list_n(カテゴリー)) 以下の結果が返ります。
カテゴリー | 要素数 |
---|---|
c("Doctors", "Health & Medical") | 2 |
Nightlife | 1 |
c("Active Life", "Mini Golf", "Golf") | 3 |
c("Bars", "American (New)", "Nightlife", "Lounges", "Restaurants") | 5 |
c("Bars", "American (Traditional)", "Nightlife", "Restaurants") | 4 |
概要
列の数値をセンタリングまたはスケーリングします。
シンタックス
normalize(<数値列>
, center = <TRUE|FALSE>
, scale = <TRUE|FALSE>
)
引数
center (オプショナル) - デフォルトはTRUEです。TRUE または FALSE の論理値、または数値で指定が可能です。TRUE の場合、NAを省いたうえで、列の値の平均を引いてセンタリングが行われます。FALSE の場合、センタリングを行いません。
scale (Optional) - デフォルトはTRUEです。TRUE または FALSE の論理値、または数値で指定が可能です。center が TRUE のときに、TRUEを指定すると、スケーリングは標準偏差で割ることによって行われます。つまり (x - mean(x)) / sd(x)
を計算することになります。centerがFALSEのときにTRUEを指定するとスケーリングは二乗平均平方根で除算されます。これは、x / sqrt(sum(x^2)/(length(x)-1))
の計算結果に等しくなります。数値の場合、入力値はこの数値で割られます。FALSEの場合、スケーリングは行われません。
返り値
Numeric
例
// x <- c(1, 2, 3, 4, 5, 100)
normalize(x, center = 0)
-0.4584610 -0.4332246 -0.4079882 -0.3827518 -0.3575154 2.0399410. を返します。これは以下の計算結果と等しくなります。
(x - mean(x)) / sd(x)
normalize(x, center = FALSE)
_0.02229944 0.04459888 0.06689832 0.08919776 0.11149720 2.22994404を返します。 これは以下の計算結果と等しくなります。
x / sqrt(sum(x^2)/(length(x)-1))
normalize(x, center = 0, scale = max(x)))
0.01 0.02 0.03 0.04 0.05 1.00を返します。
概要
ハッシュ・アルゴリズムによって値を匿名化します。
シンタックス
anonymize(<列名>
, algo = <アルゴリズム>
, seed = <整数値>
, chars = <文字列>
, n_chars = <整数値>
)
引数
例
元のデータ:
名前 | ログインID |
---|---|
Lisa | 1482148710 |
Lisa | 1484148710 |
Emily | 1479913692 |
John | 1481128318 |
mutate(ログインID = anonymize(名前, algo = "murmur32") 匿名化された値が返ります。
名前 | ログインID |
---|---|
6fe21ea2 | 1482148710 |
6fe21ea2 | 1484148710 |
2f968d4a | 1479913692 |
9b5f08f7 | 1481128318 |
返り値
Character
概要 Excelで数値になっている日付/時刻の値をPOSIXct型の値に変換します。
シンタックス
excel_numeric_to_datetime(<数値列>
, tz = <タイムゾーン>
)
引数
例
Original data:
顧客名 | 最後のログイン日時 |
---|---|
Lisa | 42370.5 |
Emily | 42318.25 |
John | 42489.75 |
mutate(最後のログイン日時 = excel_numeric_to_datetime(最後のログイン日時)) 最後のログイン日時がPOSIXctに変換されたデータフレームを返します。
顧客名 | 最後のログイン日時 |
---|---|
Lisa | 2016-01-01 12:00:00 |
Emily | 2015-11-10 06:00:00 |
John | 2016-04-29 18:00:00 |
返り値
POSIXct
概要
unix時間の数値をPOSIXctに変換します。
シンタックス
unixtime_to_datetime(<数値列>
)
例
Original data:
顧客名 | 最後のログイン日時 |
---|---|
Lisa | 1482148710 |
Emily | 1479913692 |
John | 1481128318 |
mutate(最後のログイン日時 = unixtime_to_datetime(最後のログイン日時)) 最後のログイン日時の列がPOSIXctに変換されたデータフレームを返します。
顧客名 | 最後のログイン日時 |
---|---|
Lisa | 2016-12-19 11:58:30 GMT |
Emily | 2016-11-23 15:08:12 GMT |
John | 2016-12-07 16:31:58 GMT |
返り値
Date, POSIXct
Summary
Calculates coordinations by reducing dimensionality using SVD (Singular Value Decomposition).
Syntax
do_svd.kv(<subject_column>
, <key_column>
, <value_column>
, type = <svd_type>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
, n_component = <integer>
, centering = <logical>
, output = <svd_output>
)
Arguments
Return Value
Data frame
Example
Original data:
author_name | keywords | tfidf_value |
---|---|---|
Cathy | party | 3.2 |
Cathy | exciting | 1.3 |
Cathy | friends | 0.8 |
Mary | study | 2.4 |
Mary | exam | 2.1 |
Mary | hard | 1.5 |
Lisa | sports | 1.9 |
Lisa | exciting | 1.8 |
Lisa | hard | 1.6 |
do_svd.kv(document_name, keywords, tfidf_value, n_component=2)
Reducing the number of the dimensions (keywords) to 2 and returning the result in a 'long' data form.
author_name | new.dimension | value |
---|---|---|
Cathy | 1 | -0.7131255 |
Cathy | 2 | 0.3976414 |
Lisa | 1 | 0.0121952 |
Lisa | 2 | -0.8164055 |
Mary | 1 | 0.7009303 |
Mary | 2 | 0.4187641 |
do_svd.kv(name, key, value, n_component=2, output="wide")
Reducing the number of the dimensions (keywords) to 2 and returning the result in a 'wide' data form.
author_name | axis1 | axis2 |
---|---|---|
Cathy | -0.7131255 | 0.3976414 |
Lisa | 0.0121952 | -0.8164055 |
Mary | 0.7009303 | 0.4187641 |
do_svd.kv(name, key, value, n_component=2, type="dimension")
Reducing the number of the dimensions (keywords) to 2 and returning the result by 'dimensions' instead of by 'group'.
top_key_words | new.dimension | value |
---|---|---|
exam | 1 | 0.4163953 |
exam | 2 | 0.3259924 |
exciting | 1 | -0.2560436 |
exciting | 2 | -0.3531243 |
friends | 1 | -0.1613866 |
friends | 2 | 0.1179235 |
hard | 1 | 0.3029449 |
hard | 2 | -0.2513704 |
party | 1 | -0.6455466 |
party | 2 | 0.4716940 |
sports | 1 | 0.0065547 |
sports | 2 | -0.5750138 |
study | 1 | 0.4758803 |
study | 2 | 0.3725628 |
do_svd.kv(name, key, value, n_component=2, type="variance")
Reducing the number of the dimensions (keywords) to 2 and returning the 'variance' values for each dimension
new.dimension | value |
---|---|
1 | 3.534991 |
2 | 2.697623 |
Summary
Calculates coordinations by reducing dimensionality using SVD (Singular Value Decomposition).
Syntax
do_svd(<column(s)>
, skv = <character_vector>
, type = <svd_type>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
, n_component = <integer>
, centering = <logical>
, output = <svd_output>
Arguments
Return Value
Data frame
Summary
Builds a linear regression model (lm) and store it in a data frame.
Syntax
build_lm(<formula>
, test_rate = <numeric>
, subset = <numeric_vector>
, weights = <numeric_vector>
, na.action = <na_action_type>
, method = <lm_method_type>
, model = <logical>
, x = <logical>
, y = <logical>
, qr = <logical>
, singular.ok = <logical>
, contrasts = <list>
, offset = <numeric_vector>
)
Arguments
Return Value
Data frame
Example
Original data:
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | 30 | 1000 |
UA | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | 3 | 700 |
AA | 10 | 8 | 1000 |
%>% group_by(CARRIER)
%>% build_lm(ARR_DELAY ~ DEP_DELAY + DISTANCE, test_rate = 0.1)
Returns a data frame that stores a lm (Linear Regression) model based on a formula defined as 'Predict ARR_DELAY based on DEP_DELAY and DISTANCE.' It also returns a column of original data.
CARRIER | source_data | model | .test_index |
---|---|---|---|
UA | source dataframe | lm model | c(1) |
AA | source dataframe | lm model | c(2) |
You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction function to predict with the data that is stored in the same data frame.
Summary
Calculates Survival Curve from survival time and survival status.
Syntax
do_survfit(<column_num>
, <column_num_logic>
, weights = <numeric_vector>
, subset = <numeric_vector>
, na.action = <na_action_type>
, id = <id_column>
, istate = <column>
, type = <survival_curve_type>
, error = <survfit_error_type>
, conf.type = <survfit_conf_int_type>
, conf.lower = <survfit_lower_conf_int_type>
, conf.int = <numeric>
, se.fit = <logical>
, influence = <logical>
)
Arguments
Return Value
Data frame
Example
Original data:_
status | time |
---|---|
1 | 40 |
1 | 30 |
0 | 35 |
0 | 8 |
do_survfit(time, status) Returns a data frame as follows.
time | n_risk | n_event | n_censor | estimate | std_error | conf_high | conf_low |
---|---|---|---|---|---|---|---|
8 | 4 | 0 | 1 | 1.0000000 | 0.0000000 | 1 | 1.0000000 |
30 | 3 | 1 | 0 | 0.6666667 | 0.4082483 | 1 | 0.2995071 |
35 | 2 | 0 | 1 | 0.6666667 | 0.4082483 | 1 | 0.2995071 |
40 | 1 | 1 | 0 | 0.0000000 | Inf | NA | NA |
Summary
Simulates Survival Curve for specified cohort based on a survival model.
Syntax
prediction_survfit(newdata = <cohort_data_set>
, na.action = <na_action_type>
, type = <coxph_survival_curve_type>
, conf.type = <survfit_conf_int_type>
, conf.int = <numeric>
, se.fit = <logical>
, censor = <logical>
, start.time = <numeric>
)
Arguments
Return Value
Data frame
Example
Original data: model data frame.
prediction_survfit(newdata = data.frame(age = c(50, 60), sex = (0, 1))) Returns a data frame as follows.
time | n_risk | n_event | n_censor | age_sex | estimate | std_error | conf_high | conf_low |
---|---|---|---|---|---|---|---|---|
8 | 4 | 0 | 1 | 50_0: | 1.0000000 | 0.0000000 | 1 | 1.0000000 |
30 | 3 | 1 | 0 | 50_0: | 0.6666667 | 0.4082483 | 1 | 0.2995071 |
35 | 2 | 0 | 1 | 50_0: | 0.6666667 | 0.4082483 | 1 | 0.2995071 |
40 | 1 | 1 | 0 | 50_0: | 0.0000000 | Inf | NA | NA |
Summary
Builds logistic regression model and store it in a data frame.
Syntax
build_lr(<formula>
, test_rate = <numeric>
, weights = <numeric_vector>
, subset = <numeric_vector>
, na.action = <na_action_type>
, start = <numeric_vector>
, etastart = <numeric_vector>
, mustart = <numeric_vector>
, offset = <numeric_vector>
, epsilon = <numeric>
, maxit = <integer>
, trace = <logical>
, model = <logical>
, method = <glm_method_type>
, contrasts = <list>
, x = <logical>
, y = <logical>
)
Arguments
Example
Original data:
CARRIER | IS_DELAYED | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | TRUE | 7 | 300 |
UA | TRUE | 30 | 1000 |
UA | FALSE | 0 | 200 |
AA | TRUE | 20 | 500 |
AA | FALSE | 3 | 700 |
AA | TRUE | 8 | 1000 |
%>% group_by(CARRIER)
%>% build_lr(IS_DELAYED ~ DEP_DELAY + DISTANCE, test_rate = 0.1)
Returns a data frame that stores a GLM model based on a formula defined as 'Predict ARR_DELAY based on DEP_DELAY and DISTANCE.'
CARRIER | source_data | model | .test_index |
---|---|---|---|
UA | source dataframe | glm model | c(1) |
AA | source dataframe | glm model | c(2) |
You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction function to predict with the data that is stored in the same data frame.
Summary
Builds generalized linear models (glm) and store it in a data frame.
Syntax
build_glm(<formula>
, test_rate = <numeric>
, family = <glm_family_type>
, weights = <numeric_vector>
, subset = <numeric_vector>
, na.action = <na_action_type>
, start = <numeric_vector>
, etastart = <numeric_vector>
, mustart = <numeric_vector>
, offset = <numeric_vector>
, epsilon = <numeric>
, maxit = <integer>
, trace = <logical>
, model = <logical>
, method = <glm_method_type>
, contrasts = <list>
, x = <logical>
, y = <logical>
)
Arguments
Example
Original data:
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | 30 | 1000 |
UA | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | 3 | 700 |
AA | 10 | 8 | 1000 |
%>% group_by(CARRIER)
%>% build_glm(ARR_DELAY ~ DEP_DELAY + DISTANCE, test_rate = 0.1)
Returns a data frame that stores a GLM model based on a formula defined as 'Predict ARR_DELAY based on DEP_DELAY and DISTANCE.'
CARRIER | source_data | model | .test_index |
---|---|---|---|
UA | source dataframe | lm model | c(1) |
AA | source dataframe | lm model | c(2) |
You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction function to predict with the data that is stored in the same data frame.
Summary
Builds multinomial logistic regression model and store it in a data frame.
Syntax
build_multinom(<formula>
, test_rate = <numeric>
, subset = <numeric_vector>
, weights = <numeric_vector>
, na.action = <na_action_type>
, Hess = <logical>
, summ = <multinom_summ_type>
, censored = <logical>
, model = <logical>
, contrasts = <list>
)
Arguments
Example
Original data:
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | 30 | 1000 |
DL | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | 3 | 700 |
AA | 10 | 8 | 1000 |
%>% build_multinom(CARRIER ~ ARR_DELAY + DEP_DELAY, test_rate = 0.1)
Returns a data frame that stores a GLM model based on a formula defined as 'Predict ARR_DELAY based on DEP_DELAY and DISTANCE.'
source_data | model | .test_index |
---|---|---|
source dataframe | multinom model | c(1) |
You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction function to predict with the data that is stored in the same data frame.
Summary
Builds Cox Proportional Hazard Model for survival analysis and store it in a data frame.
Syntax
build_coxph(<formula>
, test_rate = <numeric>
, subset = <numeric_vector>
, weights = <numeric_vector>
, na.action = <na_action_type>
, init = <numeric>
, ties = <coxph_tie_type>
, singular.ok = <logical>
, model = <logical>
, x = <logical>
, y = <logical>
, tt = <function>
)
Arguments
Example
Original data:
time | status | age | sex |
---|---|---|---|
40 | 2 | 55 | female |
30 | 2 | 68 | male |
35 | 1 | 59 | male |
8 | 1 | 80 | female |
build_coxph(survival::Surv(time, status) ~ age + sex) Builds a Cox Proportional Hazard Model that estimates survival of the subjects based on age and sex. The resulting model is stored in returning data frame. You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction_coxph function to predict with the data that is stored in the same data frame.
Summary
Returns a data frame with regression information about a model.
Syntax
prediction(data = "training"|"test"|"newdata"
, data_frame = <data_set>
)
Arguments * data (Optional) - The default is "training". Type of data to use in the prediction. * data_frame (Optional) - This works only when data = "newdata". A name of another data frame to apply the model.
Return Value
Data Frame
Example
Original data: model data frame.
prediction(data = "test")
Returns a data frame with predicted values.
Summary
Returns a data frame with binary classification information about a model.
Syntax
prediction_binary(<predicted_probability_column>
, <actual_value_column>
, data = "training"|"test"|"newdata"
, threshold = <binary_metrics>
, data_frame = <data_set>
)
Arguments
Return Value
Data Frame
Example
Original data: binary classification model data frame.
prediction_binary(data = "test", threshold = 0.2)
Returns a data frame with predicted values of binary classification.
Summary
Returns a data frame with predicted values of Cox Proportional Hazard Model.
Syntax
prediction_coxph(data = "training"|"test"
, type.predict = <coxph_predict_type>
, type.residuals = <coxph_residuals_type>
)
Arguments * data (Optional) - The default is "training". Type of data to use in the prediction. * type.predict (Optional) - The default is "lp". The type of prediction. This can be * "lp" * "risk" * "expected" * type.residuals (Optional) - The default is "martingale". The type of residuals. This can be * "martingale" * "deviance" * "score" * "schoenfeld" * "scaledsch" * "dfbeta" * "dfbetas"
Return Value
Data Frame
Example
Original data: coxph model data frame.
prediction_coxph(data = "test")
Returns a data frame with predicted values.
Summary
Returns a data frame with 'Parameter Estimates (Coefficients)' information about a model including the below.
Syntax
model_coef(conf_int = <conf_int_type>
, conf.level = <numeric>
)
Arguments
Return Value
Data Frame
Example
Original data: lm model or glm model
model_coef(conf_int = "default", conf.level = 0.90)
Returns a data frame with 'Parameter Estimates' information.
Summary
Returns a data frame with 'Summary of Fit' information about a model including the below.
Syntax
model_stats()
Example
Original data: lm model or glm model
model_stats()
Returns a data frame with 'Summary of Fit' information.
Return Value
Data Frame
Summary
Returns a data frame with anova test information about a model including the below.
Syntax
model_anova()
Return Value
Data Frame
Example
Original data: lm model or glm model
model_anova()
Returns a data frame with anova test information.
Summary
Returns a data frame with evaluation score of regression including the below.
Syntax
evaluate_regression(<predicted_value_column>
, <actual_value_column>
)
Arguments
Return Value
Data Frame
Example
Original data:
ARR_DELAY | predicted_value |
---|---|
10 | 7 |
20 | 30 |
-5 | 0 |
20 | 20 |
-5 | 3 |
10 | 8 |
evaluate_regression(predicted_value, ARR_DELAY)
Returns a data frame with evaluation scores of regression.
Summary
Returns a data frame with evaluation score of binary classification including the below.
Syntax
evaluate_binary(<predicted_probability_column>
, <actual_value_column>
, threshold = <binary_metrics>
)
Arguments
Return Value
Data Frame
Example
Original data:
IS_DELAYED | predicted_probability |
---|---|
TRUE | 0.82 |
TRUE | 0.67 |
FALSE | 0.34 |
TRUE | 0.98 |
FALSE | 0.19 |
TRUE | 0.26 |
evaluate_binary(predicted_value, ARR_DELAY, threshold = "accuracy")
Returns a data frame with evaluation scores of binary classification.
Summary
Returns a data frame with evaluation score of multi classification including the below.
Syntax
evaluate_multi(<predicted_label_column>
, <actual_value_column>
)
Arguments
Return Value
Data Frame
Example
Original data:
CARRIER | predicted_label |
---|---|
AA | AA |
9E | 9E |
AS | AA |
9E | 9E |
AA | AA |
AS | FL |
evaluate_binary(predicted_value, ARR_DELAY, threshold = "accuracy")
Returns a data frame with evaluation scores of multi classification.
micro_f_score | macro_f_score | accuracy | misclassification_rate |
---|---|---|---|
0.6666667 | 0.45 | 0.6666667 | 0.3333333 |
Summary
Returns coordinates of roc curve.
Syntax
do_roc(<predicted_probability_column>
, <actual_value_column>
)
Arguments
Return Value
Data Frame
Example
Original data:
IS_DELAYED | predicted_probability |
---|---|
TRUE | 0.82 |
TRUE | 0.67 |
FALSE | 0.34 |
TRUE | 0.98 |
FALSE | 0.19 |
TRUE | 0.26 |
do_roc(predicted_value, ARR_DELAY)
Returns a data frame with true_positive_rate and false_positive_rate.
true_positive_rate | false_positive_rate |
---|---|
0.00 | 0.0 |
0.25 | 0.0 |
0.50 | 0.0 |
0.75 | 0.0 |
0.75 | 0.5 |
1.00 | 0.5 |
1.00 | 1.0 |
With this data, you can assign "false_positive_rate" to X axis and "true_positive_rate" to Y axis to draw ROC curve.
Summary
Builds a clustering model (k-means) from variable columns and returns the summary of the model or the augmented data depending on the parameter value.
Syntax
build_kmeans.cols(<column(s)>
, centers = <integer>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
, seed = <integer>
, iter.max = <integer>
, nstart = <integer>
, algorithm = <kmeans_algorithms>
, trace = <logical>
, normalize_data = <logical>
, augment = <logical>
, keep.source = <logical>
)
Arguments
augment_kmeans(model, source.data)
Return Value
Data frame
Example
Original data:
location | 1900 | 1901 | 1902 |
---|---|---|---|
Als | 35.02899 | 24.02899 | 45.02899 |
Bea | 18.00000 | 10.00000 | 27.00000 |
Bor | 18.14896 | 10.64896 | 20.64896 |
build_kmeans.cols(-location, centers=2, augment=TRUE)
Builds a K-means clustering model selecting all the columns other than 'location' and setting 2 as the number of the clusters, and scoring the original data right away. If you want to evaluate the model set 'augment' to FALSE.
location | X1900 | X1901 | X1902 | .cluster |
---|---|---|---|---|
Als | 35.02899 | 24.02899 | 45.02899 | 2 |
Bea | 18.00000 | 10.00000 | 27.00000 | 1 |
Bor | 18.14896 | 10.64896 | 20.64896 | 1 |
Summary
Builds a clustering model (k-means) from key-value columns and store the model into a generated data frame or augment the original data with the clustered ID.
Syntax
build_kmeans.kv(<subject_column>
, <key_column>
, <value_column>
, centers = <integer>
, seed = <integer>
, iter.max = <integer>
, nstart = <integer>
, algorithm = <kmeans_algorithms>
, trace = <logical>
, normalize_data = <logical>
, augment = <logical>
, keep.source = <logical>
)
Arguments
augment_kmeans(model, source.data)
Return Value
Data frame
Example
Original data:
location | year | harvest_date |
---|---|---|
Als | 1900 | 35.02899 |
Als | 1901 | 24.02899 |
Als | 1902 | 45.02899 |
Bea | 1900 | 18.00000 |
Bea | 1901 | 10.00000 |
Bea | 1902 | 27.00000 |
Bor | 1900 | 18.14896 |
Bor | 1901 | 10.64896 |
Bor | 1902 | 20.64896 |
build_kmeans.kv(location, year, harvest_date, centers=2, augment=TRUE)
Builds a K-means clustering model selecting 'location' as the subject to cluster, 'year' as the dimension, and 'harvest_date' as the value, and setting 2 as the number of the clusters, and scoring the original data right away. If you want to evaluate the model set 'augment' to FALSE.
location | year | harvest_date | .cluster |
---|---|---|---|
Als | 1900 | 35.02899 | 2 |
Als | 1901 | 24.02899 | 2 |
Als | 1902 | 45.02899 | 2 |
Bea | 1900 | 18.00000 | 1 |
Bea | 1901 | 10.00000 | 1 |
Bea | 1902 | 27.00000 | 1 |
Bor | 1900 | 18.14896 | 1 |
Bor | 1901 | 10.64896 | 1 |
Bor | 1902 | 20.64896 | 1 |
Summary
Builds a clustering model (k-means). Stores the model into a generated data frame or the augmented data depending on the parameter value.
Syntax
build_kmeans(<column(s)>
, skv = <character_vector>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
, centers = <integer>
, iter.max = <integer>
, nstart = <integer>
, algorithm = <kmeans_algorithms>
, trace = <logical>
, normalize_data = <logical>
, seed = <integer>
, augment = <logical>
, keep.source = <logical>
)
Arguments
augment_kmeans(model, source.data)
Return Value
Data frame
Example
Original data:
location | 1900 | 1901 | 1902 |
---|---|---|---|
Als | 35.02899 | 24.02899 | 45.02899 |
Bea | 18.00000 | 10.00000 | 27.00000 |
Bor | 18.14896 | 10.64896 | 20.64896 |
build_kmeans(-location, centers=2, augment=TRUE)
Builds a K-means clustering model selecting all the columns other than 'location' and setting 2 as the number of the clusters, and scoring the original data right away. If you want to evaluate the model set 'augment' to FALSE.
location | X1900 | X1901 | X1902 | .cluster |
---|---|---|---|---|
Als | 35.02899 | 24.02899 | 45.02899 | 2 |
Bea | 18.00000 | 10.00000 | 27.00000 | 1 |
Bor | 18.14896 | 10.64896 | 20.64896 | 1 |
Original data:
location | year | harvest_date |
---|---|---|
Als | 1900 | 35.02899 |
Als | 1901 | 24.02899 |
Als | 1902 | 45.02899 |
Bea | 1900 | 18.00000 |
Bea | 1901 | 10.00000 |
Bea | 1902 | 27.00000 |
Bor | 1900 | 18.14896 |
Bor | 1901 | 10.64896 |
Bor | 1902 | 20.64896 |
build_kmeans(skv = c("location", "year", "harvest_date"), centers = 2, augment = TRUE)
Builds a K-means clustering model selecting 'location' as the subject to cluster, 'year' as the dimension, and 'harvest_date' as the value, and setting 2 as the number of the clusters, and scoring the original data right away. If you want to evaluate the model set 'augment' to FALSE.
location | year | harvest_date | .cluster |
---|---|---|---|
Als | 1900 | 35.02899 | 2 |
Als | 1901 | 24.02899 | 2 |
Als | 1902 | 45.02899 | 2 |
Bea | 1900 | 18.00000 | 1 |
Bea | 1901 | 10.00000 | 1 |
Bea | 1902 | 27.00000 | 1 |
Bor | 1900 | 18.14896 | 1 |
Bor | 1901 | 10.64896 | 1 |
Bor | 1902 | 20.64896 | 1 |
Summary
Execute t-test, which checks differences of means of variables.
Syntax
do_t.test(<value_column>
, <group_column>
, alternative = <alternative_type>
, mu = <integer>
, paired = <logical>
, var.equal = <logical>
, conf.level = <numeric>
, subset = <column_logical>
, na.action = <na_action_type>
)
Arguments
Return Value
Data frame
Example
Original data:
location | year | harvest_date |
---|---|---|
Als | 1900 | 35.02899 |
Als | 1901 | 24.02899 |
Als | 1902 | 45.02899 |
Bor | 1900 | 18.14896 |
Bor | 1901 | 10.64896 |
Bor | 1902 | 20.64896 |
do_t.test(harvest_date, location)
Returns a data frame with one row that has t-test result.
Summary
Execute F-test, which checks the differences of variances between groups.
Syntax
do_var.test(<value_column>
, <group_column>
, ratio = <numeric>
, alternative = <alternative_type>
, conf.level = <numeric>
, na.action = <na_action_type>
)
Arguments
Return Value
Data frame
Example
Original data:
location | year | harvest_date |
---|---|---|
Als | 1900 | 35.02899 |
Als | 1901 | 24.02899 |
Als | 1902 | 45.02899 |
Bor | 1900 | 18.14896 |
Bor | 1901 | 10.64896 |
Bor | 1902 | 20.64896 |
do_var.test(harvest_date, location)
Returns a data frame with one row that has t-test result.
Summary
Execute chi-squared contingency table tests and goodness-of-fit tests.
Syntax
do_chisq.test(<column(s)>
, correct = <logical>
, p = <column_num>
, rescale.p = <logical>
, simulate.p.value = <logical>
, B = <numeric>
)
Arguments
Return Value
Data frame
Example
Original data:
clarity | GIA | HRD | IGI |
---|---|---|---|
IF | 6 | 4 | 34 |
VS1 | 61 | 13 | 7 |
VS2 | 36 | 15 | 2 |
VVS1 | 15 | 23 | 14 |
VVS2 | 33 | 24 | 21 |
do_chisq.test(-clarity)
Returns a data frame with one row that has chi-squared test result.
statistic | p.value | parameter | method |
---|---|---|---|
112.7472 | 0 | 8 | Pearson's Chi-squared test |
Summary
Find rules of what tend to occur at the same time from transaction data.
Syntax
do_apriori(<subject_column>
, <key_column>
, minlen = <integer>
, maxlen = <integer>
, min_support = <numeric>
, max_support = <numeric>
, min_confidence = <numeric>
, lhs = <character_vector>
, rhs = <character_vector>
, max_basket_items = <numeric>
)
Arguments
Return Value
Data frame
Example
Original data:
item_name | transaction_id |
---|---|
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
carrot | 3 |
apple | 4 |
carrot | 4 |
do_apriori(item_name, transaction_id)
Returns association rules about item names.
lhs | rhs | support | confidence | lift |
---|---|---|---|---|
apple | 0.75 | 0.7500000 | 1.0000000 | |
carrot | 0.75 | 0.7500000 | 1.0000000 | |
banana | apple | 0.25 | 1.0000000 | 1.3333333 |
orange | carrot | 0.25 | 1.0000000 | 1.3333333 |
apple | carrot | 0.50 | 0.6666667 | 0.8888889 |
carrot | apple | 0.50 | 0.6666667 | 0.8888889 |
do_apriori(item_name, transaction_id, minlen=2)
Returns association rules where the total number of item names in lhs and rhs are more than 2.
lhs | rhs | support | confidence | lift |
---|---|---|---|---|
banana | apple | 0.25 | 1.0000000 | 1.3333333 |
orange | carrot | 0.25 | 1.0000000 | 1.3333333 |
apple | carrot | 0.50 | 0.6666667 | 0.8888889 |
carrot | apple | 0.50 | 0.6666667 | 0.8888889 |
do_apriori(item_name, transaction_id, lhs=c( "apple", "orange"))
Returns association rules where apple or orange come to lhs.
lhs | rhs | support | confidence | lift |
---|---|---|---|---|
orange | carrot | 0.25 | 1.0000000 | 1.3333333 |
apple | carrot | 0.50 | 0.6666667 | 0.8888889 |
Summary
Detect anomaly in time series data frame.
Syntax
do_anomaly_detection(<column_date>
, <column_num>
, direction = <anomaly_direction_type>
, e_value = <logical>
, max_anoms = <numeric>
, alpha = <numeric>
, only_last = <anomaly_last_type>
, threshold = <anomaly_threshold_type>
, longterm = <logical>
, piecewise_median_period_weeks = <integer>
)
Arguments
Return Value
Data frame
Example
Original data:
dateHour | newUsers |
---|---|
... | ... |
2017-01-20 09:00:00 | 4 |
2017-01-20 10:00:00 | 2 |
2017-01-20 11:00:00 | 5 |
2017-01-20 12:00:00 | 31 |
2017-01-20 13:00:00 | 3 |
2017-01-20 14:00:00 | 3 |
... | ... |
do_anomaly_detection(dateHour, newUsers, direction = "both", e_value = TRUE)
Returns data frame with columns about anomaly data.
dateHour | newUsers | pos_anomaly | pos_value | neg_anomaly | neg_value | expected_value |
---|---|---|---|---|---|---|
... | ... | ... | ... | ... | ... | ... |
2017-01-20 09:00:00 | 4 | FALSE | NA | FALSE | NA | 4 |
2017-01-20 10:00:00 | 2 | FALSE | NA | FALSE | NA | 2 |
2017-01-20 11:00:00 | 5 | FALSE | NA | FALSE | NA | 5 |
2017-01-20 12:00:00 | 31 | TRUE | 31 | FALSE | NA | 5 |
2017-01-20 13:00:00 | 3 | FALSE | NA | FALSE | NA | 3 |
2017-01-20 14:00:00 | 3 | FALSE | NA | FALSE | NA | 3 |
... | ... | ... | ... | ... | ... | ... |
Summary
Add forecast data to time series data frame.
Syntax
do_prophet(<column_date>
, <column_num>
, <numeric>
, time_unit = <prophet_time_unit>
, include_history = <logical>
, fun.aggregate = <aggregate_function>
, growth = "linear"|"logistics"
, seasonality.prior.scale = <numeric>
, yearly.seasonality = <logical>
, weekly.seasonality = <logical>
, n.changepoints = <numeric>
, changepoint.prior.scale = <numeric>
, changepoints = <list>
, holidays.prior.scale = <numeric>
, holidays = <data_set>
, mcmc.samples =
Arguments
Return Value
Data frame
Example
Original data:
date | pageviews |
---|---|
... | ... |
2017-03-19 | 2383 |
2017-03-20 | 4441 |
2017-03-21 | 3147 |
2017-03-22 | 456 |
... | ... |
do_prophet(date, pageviews, 2, time_unit = "day")
Returns data frame with forecasted rows and columns about trend and seasonality.
date | pageviews | forecasted_value | forcasted_value_high | forcasted_value_low | trend | trend_high | trend_low | seasonal | seasonal_low | seasonal_high | yearly | yearly_low | yearly_high | weekly | weekly_low | weekly_high |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
2017-03-19 | 2383 | 3200.6539 | 4150.7993 | 2199.57 | 1131.882 | 1131.882 | 1131.882 | 2068.7719 | 2068.7719 | 2068.7719 | 1014.3165 | 1014.3165 | 1014.3165 | -177.1076 | -177.1076 | -177.1076 |
2017-03-20 | 4441 | 3401.953 | 4330.5388 | 2401.9095 | 1089.3266 | 1089.3266 | 1089.3266 | 2312.6264 | 2312.6264 | 2312.6264 | 1258.171 | 1258.171 | 1258.171 | -174.3324 | -174.3324 | -174.3324 |
2017-03-21 | 3147 | 2723.3344 | 3655.037 | 1841.2349 | 1046.7712 | 1046.7712 | 1046.7712 | 1676.5631 | 1676.5631 | 1676.5631 | 622.1077 | 622.1077 | 622.1077 | 15.2078 | 15.2078 | 15.2078 |
2017-03-22 | 456 | 1209.1918 | 2152.4326 | 298.3122 | 1004.2159 | 1004.2159 | 1004.2159 | 204.976 | 204.976 | 204.976 | -849.4794 | -849.4794 | -849.4794 | 143.4983 | 143.4983 | 143.4983 |
2017-03-23 | NA | 654.9152 | 1581.3289 | -276.3799 | 876.5498 | 876.5498 | 876.5497 | -221.6346 | -221.6346 | -221.6346 | -1276.09 | -1276.09 | -1276.09 | 107.7315 | 107.7315 | 107.7315 |
2017-03-24 | NA | 2090.3595 | 3049.9388 | 1133.799 | 833.9944 | 833.9944 | 833.9944 | 1256.3651 | 1256.3651 | 1256.3651 | 201.9097 | 201.9097 | 201.9097 | 77.2003 | 77.2003 | 77.2003 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
Summary
Estimate impact of an event (advertisement, etc.) on a market, by using other markets to form a synthetic control.
Syntax
do_market_impact(<column_date>
, <column_num>
, <column_text>
, target_market = <text>
, time_unit = <market_impact_time_unit>
, fun.aggregate = <aggregate_function>
, event_time = <text>
, output_type = "series"|"model_stats"|"model_coef"|"predictor_market_candidates"
, na_fill_type = "spline"|"interpolate"|"previous"|"value"
, na_fill_value = <numeric>
, distance_weight = <numeric>
, alpha = <numeric>
, niter = <numeric>
, standardize.data = <logical>
, prior.level.sd = <numeric>
, nseasons = <numeric>
, season.duration = <numeric>
, dynamic.regression = <logical>
)
Arguments
Return Value
Data frame
Example
Original data:
date | pageviews | country |
---|---|---|
... | ... | ... |
2017-03-19 | 2383 | Japan |
2017-03-19 | 3625 | UK |
2017-03-19 | 3825 | US |
2017-03-20 | 4441 | Japan |
2017-03-20 | 4721 | UK |
2017-03-20 | 8367 | US |
2017-03-21 | 383 | Japan |
2017-03-21 | 2693 | UK |
2017-03-21 | 3147 | US |
... | ... | ... |
do_market_impact(date, pageviews, country, target_market = "Japan", event_time = "2017-03-20")
Returns data frame with pageviews of target market, synthetic control calculated from pageviews of other markets, and estimated impact of the event which happened only to the target market.
Output data frame columns:
Summary
Use a row as column names.
Syntax
row_as_header(row_index = <integer>
, prefix = <character>
, clean_names = <logical>
)
Arguments
Return Value
Data frame
Example
Original data:
V1 | V2 |
---|---|
NA | NA |
item.name | transaction.id |
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
carrot | 3 |
apple | 4 |
carrot | 4 |
row_as_header(row_index = 2, prefix = "c_", clean_names = TRUE)
Returns data frame using the 2nd row as column names with prefix and dot is replaced by underscore.
c_item_name | c_transaction_id |
---|---|
NA | NA |
banana | 1 |
apple | 1 |
carrot | 2 |
apple | 2 |
orange | 3 |
carrot | 3 |
apple | 4 |
carrot | 4 |
Summary
Pivot columns into rows and columns. Values are count of pairs of rows and columns or aggregation of another column.
Syntax
pivot(<formula>
, value = <column>
, fill = <numeric>
, fun.aggregate = <character>
, na.rm = <logical>
)
Arguments
Return Value
Data frame
Example
Original data:
clarity | certification | colour | price |
---|---|---|---|
VVS2 | HRD | F | 10796 |
VS1 | GIA | F | 1551 |
VS1 | GIA | F | 4291 |
VVS2 | GIA | F | 5881 |
VS2 | GIA | H | 4585 |
VVS2 | GIA | H | 5193 |
pivot(clarity+colour~certification, value = price, fill=0, fun.aggregate = sum)
Returns data frame with rows of combinations of clarity and colour and with columns of certification. Values are sum of price and missing values are filled by 0.
clarity_colour | GIA | HRD |
---|---|---|
VS1_F | 5842 | 0 |
VS2_H | 4585 | 0 |
VVS2_F | 5881 | 10796 |
VVS2_H | 5193 | 0 |
Original data:
FL_DATE | ARR_DELAY | CARRIER |
---|---|---|
2018-10-01 | 10 | AA |
2018-10-02 | 20 | UA |
2018-10-03 | 30 | AA |
2018-10-04 | 40 | UA |
2018-11-01 | 20 | UA |
2018-11-02 | 10 | AA |
2018-11-03 | 20 | UA |
2018-11-04 | 30 | AA |
pivot(floor_date(FL_DATE, unit="month") ~ CARRIER, value = ARR_DELAY, fun.aggregate = mean)
Returns data frame with rows of FL_DATE (floored to month) and ARR_DELAY with columns of each CARRIER. Values are mean of ARR_DELAY.
FL_DATE | AA | UA |
---|---|---|
2018-10-01 | 20 | 30 |
2018-11-01 | 20 | 20 |
Summary
Calculates correlations for all the pairs of the variables (columns).
Syntax
do_cor.cols(<column(s)>
, use = <cor_na_operation>
, method = <cor_method>
, distinct = <logical>
, diag = <logical>
)
Arguments
Return Value
Data frame
Example
Original data:
year | Als | Bea | Bor |
---|---|---|---|
1900 | 35.02899 | 18 | 18.14896 |
1901 | 24.02899 | 10 | 10.64896 |
1902 | 45.02899 | 27 | 20.64896 |
do_cor.cols(-year)
pair.name.1 | pair.name.2 | value |
---|---|---|
Als | Bea | 0.9981135 |
Als | Bor | 0.9680283 |
Bea | Als | 0.9981135 |
Bea | Bor | 0.9508014 |
Bor | Als | 0.9680283 |
Bor | Bea | 0.9508014 |
Summary
Calculates correlations for all the pairs of subject columns.
Syntax
do_cor.kv(<subject_column>
, <key_column>
, <value_column>
, use = <cor_na_operation>
, method = <cor_method>
, distinct = <logical>
, diag = <logical>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
)
Arguments
Return Value
Data frame
Example
Original data:
location | year | harvest_date |
---|---|---|
Als | 1900 | 35.02899 |
Als | 1901 | 24.02899 |
Als | 1902 | 45.02899 |
Bea | 1900 | 18.00000 |
Bea | 1901 | 10.00000 |
Bea | 1902 | 27.00000 |
Bor | 1900 | 18.14896 |
Bor | 1901 | 10.64896 |
Bor | 1902 | 20.64896 |
do_cor.kv(location, year, harvest_date)
location.x | location.y | value |
---|---|---|
Als | Bea | 0.9981135 |
Als | Bor | 0.9680283 |
Bea | Als | 0.9981135 |
Bea | Bor | 0.9508014 |
Bor | Als | 0.9680283 |
Bor | Bea | 0.9508014 |
Summary
Calculates correlations for all the pairs of the variables or subjects.
Syntax
do_cor(<column(s)>
, skv = <character_vector>
, use = <cor_na_operation>
, method = <cor_method>
, distinct = <logical>
, diag = <logical>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
)
Arguments
Return Value
Data frame
Example
Original data:
year | Als | Bea | Bor |
---|---|---|---|
1900 | 35.02899 | 18 | 18.14896 |
1901 | 24.02899 | 10 | 10.64896 |
1902 | 45.02899 | 27 | 20.64896 |
do_cor(-year)
pair.name.1 | pair.name.2 | value |
---|---|---|
Als | Bea | 0.9981135 |
Als | Bor | 0.9680283 |
Bea | Als | 0.9981135 |
Bea | Bor | 0.9508014 |
Bor | Als | 0.9680283 |
Bor | Bea | 0.9508014 |
Original data:
location | year | harvest_date |
---|---|---|
Als | 1900 | 35.02899 |
Als | 1901 | 24.02899 |
Als | 1902 | 45.02899 |
Bea | 1900 | 18.00000 |
Bea | 1901 | 10.00000 |
Bea | 1902 | 27.00000 |
Bor | 1900 | 18.14896 |
Bor | 1901 | 10.64896 |
Bor | 1902 | 20.64896 |
do_cor( skv = c("location", "year", "harvest_date"))
location.x | location.y | value |
---|---|---|
Als | Bea | 0.9981135 |
Als | Bor | 0.9680283 |
Bea | Als | 0.9981135 |
Bea | Bor | 0.9508014 |
Bor | Als | 0.9680283 |
Bor | Bea | 0.9508014 |
Summary
Calculate the distances between each of the pairs.
Syntax
do_dist.kv(<subject_column>
, <key_column>
, <value_column>
, distinct = <logical>
, diag = <logical>
, method = <dist_method>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
, p = <numeric>
)
Arguments
Return Value
Data frame
Example
Original data:
date | name | product | num |
---|---|---|---|
2015-06-12 | Lisa | orange | 5 |
2015-06-12 | Emily | apple | 3 |
2015-06-12 | John | carrot | 3 |
2015-06-13 | Emily | apple | 4 |
2015-06-13 | John | apple | 6 |
2015-06-16 | Lisa | orange | 2 |
2015-06-16 | John | carrot | 4 |
2015-06-16 | Emily | orange | 7 |
do_dist.kv(name, product, num)
This considers matrix like this. Duplicated entries is aggregated to mean as default and you can change it by fun.aggregate argument.
Emily | John | Lisa | |
---|---|---|---|
apple | 3.5 | 6.0 | 0.0 |
carrot | 0.0 | 3.5 | 0.0 |
orange | 7.0 | 0.0 | 3.5 |
Then calculate euclidean distances between pairs of each column.
name.x | name.y | value |
---|---|---|
Emily | John | 8.215838 |
Emily | Lisa | 4.949747 |
John | Emily | 8.215838 |
John | Lisa | 7.778175 |
Lisa | Emily | 4.949747 |
Lisa | John | 7.778175 |
do_dist.kv(name, product, num, fun.aggregate=sum, method="manhattan")
This considers matrix like this. Duplicated entries is aggregated to sum.
Emily | John | Lisa | |
---|---|---|---|
apple | 7 | 6 | 0 |
carrot | 0 | 7 | 0 |
orange | 7 | 0 | 7 |
Then calculate manhattan distances between pairs of each column.
name.x | name.y | value |
---|---|---|
Emily | John | 15 |
Emily | Lisa | 7 |
John | Emily | 15 |
John | Lisa | 20 |
Lisa | Emily | 7 |
Lisa | John | 20 |
Summary
Calculate distances of each of the pairs.
Syntax
do_dist.cols(<column(s)>
, distinct = <logical>
, diag = <logical>
, method = <dist_method>
, p = <numeric>
)
Arguments
Return Value
Data frame
Example
Original data:
year | Als | Bea | Bor |
---|---|---|---|
1900 | 35.02899 | 18 | 18.14896 |
1901 | 24.02899 | 10 | 10.64896 |
1902 | 45.02899 | 27 | 20.64896 |
do_dist.cols(-year)
pair.name.1 | pair.name.2 | value |
---|---|---|
Als | Bea | 28.492868 |
Als | Bor | 32.532238 |
Bea | Als | 28.492868 |
Bea | Bor | 6.385847 |
Bor | Als | 32.532238 |
Bor | Bea | 6.385847 |
Summary
Calculate distances of each of the pairs of the variables or subjects.
Syntax
do_dist(<column(s)>
, skv = <character_vector>
, distinct = <logical>
, diag = <logical>
, method = <dist_method>
, p = <numeric>
, fill = <numeric>
, fun.aggregate = <aggregate_function>
)
Arguments
Return Value
Data frame
Example
Original data:
year | Als | Bea | Bor |
---|---|---|---|
1900 | 35.02899 | 18 | 18.14896 |
1901 | 24.02899 | 10 | 10.64896 |
1902 | 45.02899 | 27 | 20.64896 |
do_dist(-year)
pair.name.1 | pair.name.2 | value |
---|---|---|
Als | Bea | 28.492868 |
Als | Bor | 32.532238 |
Bea | Als | 28.492868 |
Bea | Bor | 6.385847 |
Bor | Als | 32.532238 |
Bor | Bea | 6.385847 |
Original data:
date | name | product | num |
---|---|---|---|
2015-06-12 | Lisa | orange | 5 |
2015-06-12 | Emily | apple | 3 |
2015-06-12 | John | carrot | 3 |
2015-06-13 | Emily | apple | 4 |
2015-06-13 | John | apple | 6 |
2015-06-16 | Lisa | orange | 2 |
2015-06-16 | John | carrot | 4 |
2015-06-16 | Emily | orange | 7 |
do_dist(skv = c("name", "product", "num"))
This considers matrix like this. Duplicated entries is aggregated to mean as default and you can change it by fun.aggregate argument.
Emily | John | Lisa | |
---|---|---|---|
apple | 3.5 | 6.0 | 0.0 |
carrot | 0.0 | 3.5 | 0.0 |
orange | 7.0 | 0.0 | 3.5 |
Then calculate euclidean distances between pairs of each column.
name.x | name.y | value |
---|---|---|
Emily | John | 8.215838 |
Emily | Lisa | 4.949747 |
John | Emily | 8.215838 |
John | Lisa | 7.778175 |
Lisa | Emily | 4.949747 |
Lisa | John | 7.778175 |
do_dist(skv = c("location", "year", "harvest_date"), fun.aggregate=sum, method="manhattan")
This considers matrix like this. Duplicated entries is aggregated to sum.
Emily | John | Lisa | |
---|---|---|---|
apple | 7 | 6 | 0 |
carrot | 0 | 7 | 0 |
orange | 7 | 0 | 7 |
Then calculate manhattan distances between pairs of each column.
name.x | name.y | value |
---|---|---|
Emily | John | 15 |
Emily | Lisa | 7 |
John | Emily | 15 |
John | Lisa | 20 |
Lisa | Emily | 7 |
Lisa | John | 20 |
概要
エスケープ文字(例: \n, \t)、余分な空白、余分なピリオド、先頭と末尾のスペースを削除して、テキストをきれいにします。
シンタックス
str_clean(<文字列>
)
引数
返り値
Character
例
str_clean(" Exploratory ..io ")
"Exploratory.io"を返します。
概要
文字列のパターンを数えます。
シンタックス
str_count_all(<テキストの列>
, patterns = <文字列>
, remove.zero = <TRUE|FALSE>
)
引数
返り値
List of data frame
例
str_count_all("I ate banana, apple, and peach yesterday, and banana, peach today.", patterns=c("apple", "banana"), remove.zero=TRUE)
'apple'と'banana'の列を持つデータフレームの列のリストを返します。
概要
全角のアルファベット、数字、特殊文字を通常のアルファベット、数字、特殊文字に置き換えます。また半角カナ文字を全角カナ文字に置き換え、その他の正規化規則を適用してテキストを正規化します。これはUnicode 正規化形の規則に従います。なお、この関数はstringi::stri_trans_nfkc 関数のラッパー関数です。
シンタックス
str_normalize(<テキストの列>
)
引数
返り値
Character
例
str_normalize("ABC123+ー=") "ABC123+-="を返します。
概要
指定した記号内のテキストを抽出する。
シンタックス
str_extract_inside(<テキストの列>
, begin = <文字列>
, end = <文字列>
)
引数
返り値
Character
例
str_extract_inside(company, begin = "(", end = ")")
str_extract_inside(company, begin = "{", end = "}")
str_extract_inside(company, begin = "[", end = "]")
str_extract_inside(company, begin = "'", end = "'")
str_extract_inside(company, begin = '"', end = '"')
概要
カテゴリまたは数値型の列をロジカル型の列に変換します。引数の"true_value"がない場合、"yes", "true", "1"をTRUEとして扱い、"no", "false", "0"をFALSEとして扱います。
シンタックス
str_logical(<文字列>
, true_value = <文字列>
)
引数
返り値
Logical
例
Original data:
「ステータス」列はカテゴリー型の列です。
ステータス |
---|
yes |
no |
No |
NO |
YES |
Yes |
mutate(新しいステータス = str_logical(ステータス))
結果:
ロジカル型の「新しいステータス」の列が追加されます。
ステータス | 新しいステータス |
---|---|
yes | TRUE |
no | FALSE |
No | FALSE |
NO | FALSE |
YES | TRUE |
Yes | TRUE |
Original data:
「ステータス」列はカテゴリー型の列です。
ステータス |
---|
TRUE |
FalSE |
True |
False |
NA |
tRUE |
FALSE |
mutate(新しいステータス = str_logical(ステータス))
結果:
ロジカル型の「新しいステータス」の列が追加されます。
ステータス | 新しいステータス |
---|---|
TRUE | TRUE |
FalSE | FALSE |
True | TRUE |
False | FALSE |
NA | NA |
tRUE | TRUE |
FALSE | FALSE |
Original data:
「ステータス」列は数値型の列です。
ステータス |
---|
1 |
0 |
1 |
0 |
NA |
1 |
0 |
mutate(新しいステータス = str_logical(ステータス))
結果:
ロジカル型の「新しいステータス」列が追加されます。
ステータス | 新しいステータス |
---|---|
1 | TRUE |
0 | FALSE |
1 | TRUE |
0 | FALSE |
NA | NA |
1 | TRUE |
0 | FALSE |
Original data:
「ステータス」列は文字列型の列です。
ステータス |
---|
Sign Up |
Not Yet |
Sign Up |
Not Yet |
NA |
sign Up |
Not yet |
mutate(新しいステータス = str_logical(ステータス, "Sign Up")
結果:
ロジカル型の「新しいステータス」列が追加されます。
ステータス | 新しいステータス |
---|---|
Sign Up | TRUE |
Not Yet | FALSE |
Sign Up | TRUE |
Not Yet | FALSE |
NA | NA |
sign Up | TRUE |
Not yet | FALSE |
概要
"a"、"the"、"and"などのストップワードを返します。
シンタックス
get_stopwords(lang = <言語>
, include = <文字列のリスト>
, exclude = <文字列のリスト>
)
引数
返り値
Character
例
get_stopwords()
"a", "the", "and"といった値のリストを返します。
概要
単語に対して、肯定的または否定的なセンチメントの種類を返します。
シンタックス
word_to_sentiment(<テキストの列>
, lexicon = <感情辞書のタイプ>
)
引数
返り値
引数lexiconに"bing" (デフォルト)を指定した場合はCharacter.
引数lexiconに"AFINN" を指定した場合はNumeric.
引数lexiconに"nrc" を指定した場合はList.
例
word_to_sentiment("good")
"positive"を返します。
word_to_sentiment("bad", lexicon="AFINN")
-3を返します。
word_to_sentiment("cry", lexicon="nrc")
c("negative" "sadness")を返します。
概要
文章からセンチメントスコアを返します。正のスコアは肯定的な文章を表し、負のスコアはその反対を表します。0は「中立」を意味します。
シンタックス
get_sentiment(<テキストの列>
)
引数
返り値
Numeric
例
get_sentiment("I'm happy")
0.7071068を返します。
get_sentiment("I'm sick.")
-0.7071068を返します。
get_sentiment("I'm not so good.")
-0.5000000を返します。
概要
綴りが若干異なる単語を同じ単語として認識できるように整えます。
シンタックス
stem_word(<テキストの列>
, language = <言語>
)
引数
返り値
Character
例
stem_word(c("stand","stands", "cheerful", "cheering"))
c("stand","stand","cheer","cheer")を返します。
概要
文字列に辞書で定義されたストップワードのリストに含まれる単語がある場合、TRUEを返します。
シンタックス
is_stopword(<テキストの列>
, lang = <言語>
, include = <文字列のリスト>
, exclude = <文字列のリスト>
)
引数
返り値
Logical
例
is_stopword(c("a", "and", "stopword", "the"))
Return c(TRUE, TRUE, FALSE, TRUE).
概要
文字列が空文字または NAのときにTRUEを返します。
シンタックス
is_empty(<テキストの列>
)
引数
返り値
Logical
例
is_empty(c("", " ", NA, "The", "\n"))
c(TRUE, TRUE, TRUE, FALSE, TRUE)を返します。
概要
文字列がアルファベットのみを含む場合に TRUE を返します。
シンタックス
is_alphabet(<テキストの列>
)
引数
返り値
Data frame
例
is_alphabet(c("1", "132", "32MB", "hello", "Hello World"))
c(FALSE, FALSE, FALSE, TRUE, FALSE)を返します。
この関数はトークンに使用されることを想定しており、文章に使用された場合は FALSE を返します。
概要
IPアドレスから国名を返します。
シンタックス
ip_to_country(<テキストの列>
)
引数
返り値
Character
例
ip_to_country("133.43.96.45")
"Japan"を返します
概要
url からドメイン (例: "exploratory.io")を返します。
シンタックス
url_domain(<テキストの列>
)
引数
返り値
Character
例
url_domain("https://exploratory.io/login/")
"exploratory.io"を返します。
概要
url からフラグメントを返します。
シンタックス
url_fragment(<テキストの列>
)
引数
返り値
Character
例
url_fragment("https://exploratory.io/?debug=true#test")
"test"を返します。
概要
urlからパスを返します。
シンタックス
url_path(<テキストの列>
)
引数
返り値
Character
例
url_path("https://exploratory.io/reference/")
"reference/"を返します。
概要
url からポートを返します。
シンタックス
url_port(<テキストの列>
)
引数
返り値
Character
例
url_port("https://exploratory.io:443")
"443"を返します。
概要
urlからスキーム(例:"http"、"https")を返します。
シンタックス
url_scheme(<テキストの列>
)
引数
返り値
Character
例
url_scheme("https://exploratory.io")
"https"を返します。
概要
urlから接尾辞(例:"com"、"org")を返します。
シンタックス
url_suffix(<テキストの列>
)
引数
返り値
Character
例
url_suffix("https://exploratory.io")
"io"を返します。
url_suffix("http://sample.edu.co")
"edu.co"を返します。
概要
urlからサブドメイン (例 "www", "blog") を返します。
シンタックス
url_subdomain(<テキストの列>
)
引数
返り値
Character
例
url_subdomain("https://blog.exploratory.io")
"blog"を返します。
概要
url からトップレベルドメイン (例 "com"、"co") を返します。
シンタックス
url_tld(<テキストの列>
)
引数
返り値
Character
例
url_tld("http://sample.edu.co")
"co"を返します。
概要
url からデコードされたクエリパラメーターを返します。
シンタックス
url_param(<テキストの列>
, parameter_name = <文字列>
)
引数
返り値
Character
例
url_param("http://example.com/?user=ferret", "user")
"ferret"を返します。
概要
国名や国名コードを他のコードや名前(国名、大陸名など)に変換します。
シンタックス
countrycode(<列名>
, origin = <変換前の国コード>
, destination = <変換後の国コード>
)
引数
変換前や変更後の国コードで選択可能な引数の値:
返り値
Country name, id, etc.
例
countrycode("U.S.", "country.name", "iso2c")
USを返します。
countrycode("United States", "country.name", "iso2c")
USを返します。
countrycode("US", "iso2c", "country.name")
USAを返します。
countrycode("USA", "cowc", "country.name")
United Statesを返します。
countrycode(2, "cown", "country.name")
United Statesを返します。
概要
米国の州の情報を持つ列から、米国の州名、略称、数値コード、区分、地域のいずれかを返します。州の情報は、米国の州名、略語 (FIPS / ANSI コード)、数値コード (FIPS) のいずれかであり、任意の組み合わせが可能です。
シンタックス
statecode(<州の列>
, output_type = <出力のタイプ>
)
引数
出力のタイプ:
返り値
State name, State code, etc.
例
statecode("CA", "name")
Californiaを返します。
statecode("CA", "num_code")
06を返します。
statecode("California", "num_code")
06を返します。
statecode("CA", "region")
Westを返します。
概要
米国の州および郡名にをもとに米国の郡コード(FIPS - 連邦情報処理標準)を生成します。
シンタックス
countycode(state = <州名の列>
, county = <郡名の列>
)
引数
返り値
County code
例
countycode("California", "San Mateo")
06081を返します。
countycode("CA", "San Mateo")
06081を返します。
countycode("CA", "San Mateo County")
06081を返します。
Summary
Returns one token (e.g. word) per row after tokenizing a text.
Syntax
do_tokenize(<column_text>
, token = <token_type>
, keep_cols = <logical>
, to_lower = <logical>
, drop = <logical>
, output = <new_column_name>
, with_id = <logical>
, pattern = <pattern>
)
Arguments
Return Value
Data frame
Example
Original data:
index | text |
---|---|
First | It was a great party. |
Second | She has just left. She will be off tomorrow. |
do_tokenize(text)
index | document_id | sentence_id | token |
---|---|---|---|
First | 1 | 1 | it |
First | 1 | 1 | was |
First | 1 | 1 | a |
First | 1 | 1 | great |
First | 1 | 1 | party |
Second | 2 | 1 | she |
Second | 2 | 1 | has |
Second | 2 | 1 | just |
Second | 2 | 1 | left |
Second | 2 | 2 | she |
Second | 2 | 2 | will |
Second | 2 | 2 | be |
Second | 2 | 2 | off |
Second | 2 | 2 | tomorrow |
do_tokenize(text, token="sentences")
index | token |
---|---|
First | it was a great party. |
Second | she has just left. |
Second | she will be off tomorrow. |
Summary
Count pairs of words (tokens) that cooccur within a group
Syntax
pair_count(group = <column>
, value = <column>
, distinct = <logical>
, diag = <logical>
, sort = <logical>
)
Arguments
Return Value
Data frame
Example
pair_count(group=title, value=word, distinct=FALSE, diag = FALSE, sort=TRUE)
Return a data frame with word.x and word.y which is from "word" column and value that has count.
Summary
Calculates TF-IDF for each term against a group. TF-IDF is a weighting mechanism that calculates the importance of each word to each document by increasing the importance based on the term frequency while decreasing the importance based on the document frequency.
Syntax
do_tfidf(<document_column>
, <token_column>
, tf_weight = <tf_weight_type>
, idf_log_scale = <function>
, norm = "l2"|"l1"|FALSE
)
Arguments
1+log(count of a term in a document)
.log_scale_function((the total number of documents)/(the number of documents which have the token))
. It's how rare the token is in the set of documents. It might be worth trying log2 or log10. log2 increases the value more easily and log10 increases it more slowly.Return Value
Data frame
Example
Original data:
document_id | token |
---|---|
1 | this |
1 | is |
1 | what |
1 | it |
1 | is |
2 | which |
2 | is |
2 | better |
do_tfidf(document_id, token)
document_id | token | count_per_doc | count_of_docs | tfidf |
---|---|---|---|---|
1 | is | 2 | 2 | 0.0000000 |
1 | it | 1 | 1 | 0.5773503 |
1 | this | 1 | 1 | 0.5773503 |
1 | what | 1 | 1 | 0.5773503 |
2 | better | 1 | 1 | 0.7071068 |
2 | is | 1 | 2 | 0.0000000 |
2 | which | 1 | 1 | 0.7071068 |
Summary
Create columns of n-grams connected in sentences.
Syntax
do_ngram(<token_column>
, <document_column>
, <sentence_column>
, maxn = <numeric>
, sep = <text>
)
Arguments
Return Value
Data frame
Example
Original data:
document_id | sentence_id | token |
---|---|---|
1 | 1 | it |
1 | 1 | is |
1 | 1 | good |
2 | 1 | she |
2 | 1 | left |
2 | 2 | she |
2 | 2 | will |
2 | 2 | come |
2 | 2 | tomorrow |
do_ngram(token, document_id, sentence_id, maxn=3)
document_id | sentence_id | gram | token |
---|---|---|---|
1 | 1 | 1 | it |
1 | 1 | 1 | is |
1 | 1 | 1 | good |
1 | 1 | 2 | it_is |
1 | 1 | 2 | is_good |
1 | 1 | 3 | it_is_good |
2 | 1 | 1 | she |
2 | 1 | 1 | left |
2 | 1 | 2 | she_left |
2 | 2 | 1 | she |
2 | 2 | 1 | will |
2 | 2 | 1 | come |
2 | 2 | 1 | tomorrow |
2 | 2 | 2 | she_will |
2 | 2 | 2 | will_come |
2 | 2 | 2 | come_tomorrow |
2 | 2 | 3 | she_will_come |
2 | 2 | 3 | will_come_tomorrow |
Summary
Calculates the similarity between each pair of the documents using the cosine similarity algorithm. Cosine similarity measures the cosine of the angle between two vectors in the multi-dimensional space.
Syntax
do_cosine_sim.kv(<subject_column>
, <key_column>
, <value_column>
, distinct = <logical>
, diag = <logical>
, fun.aggregate = <aggregate_function>
)
Arguments
Return Value
Data frame
Example
Original data:
document_id | token | value |
---|---|---|
Lisa | it | 0.8966972 |
Lisa | was | 0.2655087 |
Lisa | good | 0.3721239 |
Emily | she | 0.5728534 |
Emily | is | 0.9082078 |
Emily | nice | 0.2016819 |
John | she | 0.8983897 |
John | is | 0.9446753 |
John | good | 0.6607978 |
do_cosine_sim.kv(document_id, token, value)
document_id.x | document_id.y | value |
---|---|---|
Lisa | Emily | 0.0000000 |
Lisa | John | 0.1671574 |
Emily | Lisa | 0.0000000 |
Emily | John | 0.8595770 |
John | Lisa | 0.1671574 |
John | Emily | 0.8595770 |
Summary
Execute multidimensional scaling (MDS). Calculate approximated coordinations from distances of entity pairs.
Syntax
do_cmdscale(<name1_column>
, <name2_column>
, <value_column>
, k = <integer>
)
Arguments
Return Value
Data frame
Example
Original data:
name.x | name.y | value |
---|---|---|
cow | horse | 36 |
cow | turtle | 82 |
horse | turtle | 48 |
do_cmdscale(pair.name.1, pair.name.2, value)
name | V1 | V2 |
---|---|---|
cow | -38.915551 | -3.435417 |
horse | -4.163866 | 5.962475 |
turtle | 43.079417 | -2.527058 |
概要
impute_naでは、平均値や中央値、手動で指定した値、または線形回帰モデルによる予測値によって欠損値を埋めることができます。
シンタックス
impute_na(<欠損値を埋めたい列>
, type = <欠損値を埋めるタイプ>
, val = <値または列>
, <予測変数の列>
)
引数
例
Original data:
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | NA | 1000 |
UA | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | NA | 700 |
AA | 10 | 8 | 1000 |
mutate(DEP_DELAY = impute_na(DEP_DELAY, type = "predict", CARRIER, ARR_DELAY, DISTANCE)) NA in DEP_DELAY is filled by predicted values from CARRIER, ARR_DELAY and DISTANCE columns using linear regression
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | 3.47 | 1000 |
UA | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | 3.59 | 700 |
AA | 10 | 8 | 1000 |
mutate(DEP_DELAY = impute_na(DEP_DELAY, type = "value", val = 10))
欠損値を10で補完します。
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE |
---|---|---|---|
UA | 10 | 7 | 300 |
UA | 20 | 10 | 1000 |
UA | -5 | 0 | 200 |
AA | 20 | 20 | 500 |
AA | -5 | 10 | 700 |
AA | 10 | 8 | 1000 |
概要
外れ値を検出し、'upper'(上位)ラベルと'lower'(下位)ラベルを返します。
シンタックス
detect_outlier(<数値列>
, type = <外れ値の検出方法>
, threshold = <数値>
)
引数
例
元のデータ:
航空会社 | 到着遅れ | 出発遅れ | 距離 |
---|---|---|---|
UA | 10 | 7 | 800 |
UA | 20 | NA | 5000 |
UA | -5 | 0 | 600 |
AA | 20 | 20 | 500 |
AA | -5 | NA | 700 |
AA | 10 | 8 | 10 |
mutate(外れ値 = detect_outlier(距離, type = "iqr"))
データの外れ値を検出して"upper"、"normal"、"lower"のラベルを付けます。
航空会社 | 到着遅れ | 出発遅れ | 距離 | 外れ値 |
---|---|---|---|---|
UA | 10 | 7 | 800 | normal |
UA | 20 | NA | 5000 | upper |
UA | -5 | 0 | 600 | normal |
AA | 20 | 20 | 500 | normal |
AA | -5 | NA | 700 | normal |
AA | 10 | 8 | 10 | lower |
Summary
Create data frame with models from input data frame by model function and arguments.
Syntax
build_model(model_func = <model_function>
, seed = <integer>
, test_rate = <numeric>
, <model_parameters>
)
Arguments
Example
Original data:
CARRIER | ARR_DELAY | DEP_DELAY | DISTANCE | WEIGHTS |
---|---|---|---|---|
UA | 10 | 7 | 300 | 0.8 |
UA | 20 | 30 | 1000 | 0.5 |
UA | -5 | 0 | 200 | 1.2 |
AA | 20 | 20 | 500 | 0.8 |
AA | -5 | 3 | 700 | 0.9 |
AA | 10 | 8 | 1000 | 0.5 |
%>% build_model(model_func = lme4::lmer, formula = ARR_DELAY ~ DEP_DELAY + (DISTANCE|CARRIER), test_rate = 0.1, weights = WEIGHTS)
Returns a data frame that stores a linear mixed-effects model. It also returns a column of original data.
source_data | model | .test_index |
---|---|---|
source dataframe | lme4 model | c(1) |
You can use model_coef or model_stats function to get the summary information about the models. Also, you can use prediction function to predict with the data that is stored in the same data frame.
Summary
One-hot encodes a categorical column, producing separate columns for each categorical values, each of which has values of 1 or 0 that tells whether a row has the value the column represents.
Syntax
one_hot(<column>
)
Example
Original data:
ARR_DELAY | CARRIER |
---|---|
10 | UA |
20 | UA |
-5 | UA |
20 | AA |
-5 | AA |
10 | AA |
one_hot(CARRIER)
ARR_DELAY | CARRIER_UA | CARRIER_AA |
---|---|---|
10 | 1 | 0 |
20 | 1 | 0 |
-5 | 1 | 0 |
20 | 0 | 1 |
-5 | 0 | 1 |
10 | 0 | 1 |
概要
最も頻度の多い値を返します。
シンタックス
get_mode(<列名>
, na.rm = <TRUE|FALSE>
)
引数
例
元のデータ:
到着遅れ | 航空会社 |
---|---|
10 | UA |
20 | UA |
-5 | UA |
20 | AA |
summarize(到着遅れの最頻値 = get_mode(到着遅れ), 航空会社の最頻値 = get_mode(航空会社))
到着遅れの最頻値 | 航空会社の最頻値 |
---|---|
20 | UA |
概要
指定した集計関数を利用して列の値を集計します。 グループ化をしている場合、各グループの値を集計します。
シンタックス
summarize_group(group_cols=<列のリスト>
, group_funs = <関数>
, ...)
引数
例
元のデータ:
到着遅れ | 航空会社 |
---|---|
10 | UA |
20 | UA |
30 | UA |
-20 | UA |
20 | AA |
-5 | AA |
-9 | AA |
summarize_group(group_cols=c("航空会社"), group_funs=("none"), 到着遅れ_平均 = mean(到着遅れ))
航空会社 | 到着遅れ_平均 |
---|---|
UA | 10 |
AA | 2 |
元のデータ:
到着遅れ | 出発遅れ | 航空会社 |
---|---|---|
10 | 20 | UA |
20 | 15 | UA |
30 | -5 | UA |
-20 | 30 | UA |
20 | 10 | AA |
-5 | 20 | AA |
-9 | 30 | AA |
summarize_group(group_cols=c("航空会社"), group_funs=("none"), 到着遅れ平均 = mean(到着遅れ), DEP_DEALY合計 = sum(出発遅れ))
航空会社 | 到着遅れ_平均 | 出発遅れ_合計 |
---|---|---|
UA | 10 | 60 |
AA | 2 | 60 |
元のデータ:
日付 | 到着遅れ | 出発遅れ |
---|---|---|
06/01/2018 | 10 | 20 |
06/12/2018 | 20 | 15 |
06/18/2018 | 30 | -5 |
06/21/2018 | -20 | 30 |
07/14/2018 | 20 | 10 |
07/16/2018 | -5 | 20 |
07/25/2018 | -9 | 30 |
summarize_group(group_cols=c("FL_DATE"), group_funs=("month"), 到着遅れ平均 = mean(到着遅れ), 出発遅れ合計 = sum(出発遅れ))
日付_月 | 到着遅れ_平均 | 出発遅れ_合計 |
---|---|---|
6 | 10 | 60 |
7 | 2 | 60 |
概要
指定した集計関数を利用して、各行の列の値を集計 します。
シンタックス
<列名>
)), <集計関数>
, ...)<列名>
)), <集計関数>
, ...)<列選択関数>
)), <集計関数>
, ...)<文字列>
, ignore.case = <TRUE|FALSE>
)), <集計関数>
, ...)<文字列>
, ignore.case = <TRUE|FALSE>
)), <集計関数>
, ...)<文字列>
, ignore.case = <TRUE|FALSE>
)), <集計関数>
, ...)<文字列>
, ignore.case = <TRUE|FALSE>
)), <集計関数>
, ...)<文字列>
, <開始地点>:<終了地点>
)), <集計関数>
, ...)引数
例
mutate(合計 = summarize_row(across(c(コンシューマーからの売上, 法人から売上, 公共機関からの売上)), sum)
行ごとに指定した列の値を合計し、「合計」列を作成します。いずれかの列の値がNAの場合、結果もNAになります。
mutate(合計= summarize_row(across(c(コンシューマーからの売上, 法人から売上, 公共機関からの売上)), sum, na.rm = TRUE)
上記の例と同じ結果を返します。ただし、列の値のいくつかがNAであっても、結果は残りの値から計算されます。
mutate(合計 = summarize_row(across(where(is.numeric)), sum, na.rm = TRUE)
行ごとにすべての数値列の値を合計し、「合計」列を作成します。
概要
表計算などの指定された関数を使用して、新しい列を作成するか、既存の列を上書きます。グループ化をしているときには、グループごとに計算が実行されます。
シンタックス
mutate_group(group_cols=<列のリスト>
, group_funs = <関数>
, sort_cols=<列のリスト>
, sort_funs = <関数>
, ...)
引数
例
元のデータ:
到着遅れ | 航空会社 |
---|---|
10 | UA |
20 | UA |
30 | UA |
20 | UA |
20 | AA |
5 | AA |
9 | AA |
mutate_group(group_cols=c("航空会社"), group_funs=("none"), 到着遅れ_累積合計 = cumsum(到着遅れ))
航空会社 | 到着遅れ_cumsum |
---|---|
UA | 10 |
UA | 30 |
UA | 60 |
UA | 80 |
AA | 20 |
AA | 25 |
AA | 34 |
元のデータ:
到着遅れ | 出発遅れ | 航空会社 |
---|---|---|
10 | 20 | UA |
20 | 15 | UA |
30 | -5 | UA |
-20 | 30 | UA |
20 | 10 | AA |
-5 | 20 | AA |
-9 | 30 | AA |
mutate_group(group_cols=c("航空会社"), group_funs=("none"), 到着遅れ_dfprev = 到着遅れ - lag(到着遅れ), DEP_DEALY_dfprev = 出発遅れ - lag(出発遅れ))
航空会社 | 到着遅れ_dfprev | 出発遅れ_dfprev |
---|---|---|
UA | NA | NA |
UA | 10 | -5 |
UA | 10 | -20 |
UA | -50 | 35 |
AA | NA | NA |
AA | -25 | 10 |
AA | -4 | 10 |
概要
指定した条件を満たす合計値を返します。
シンタックス
sum_if(<列名>
, <条件>
,... , na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(total = sum_if(売上合計, 商品 == 'パソコン' & 国 %in% c("Japan", "United States", "United Kingdom"))) 商品が「PC」で、国名が「Japan」、「United States」、「United Kingdom」のいずれかの売上の合計を計算する新しい列を作成ます。
summarize(total = sum_if(数量, 優先度 == 'P1' | 国 == "United States")) 優先度が「P1」または国が 「United States」 の数量の合計を計算する新しい列を作成します。
概要
指定した条件を満たす合計値の、すべての値の合計値に対する比率を返します。
シンタックス
sum_if_ratio(<列名>
, <条件>
,... , na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(total = sum_if_ratio(売上, 商品== 'パソコン' & 国 %in% c("Japan", "United States", "United Kingdom"))) 商品が「PC」で、国が「Japan」「United States」「United Kingdom」のいずれかの売上合計の、各グループの売上合計に対する比率を計算する新しい列を作成する。
概要
指定した条件を満たす行の数を集計します。
シンタックス
count_if(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
例
summarize(国の数 = count_if(国, 商品 == ‘’パソコン | 数量 > 10)) グループごとに商品が'パソコン'、または数量が10より大きい行の数を返します。
概要
総行数に対する指定した条件を満たす行の数の比率を集計します。
シンタックス
count_if_ratio(<列名>
, <条件>
, ... , na.rm = <TREU|FALSE>
)
引数
例
summarize(国の割合 = count_if_ratio(国, 商品 == 'パソコン' | 数量 > 10)) グループごとの行の数に対する、商品が'パソコン'または数量が10より大きい行の数の比率を返します。
概要
指定した条件を満たす行に由来する列の一意な値の数を数えます。
シンタックス
count_unique_if(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
例
summarize(country_count = count_unique_if(国, 商品 == 'パソコン' & 数量 > 10)) グループごとに商品が'パソコン'で、数量が10より大きい行に対する一意な国の数を返します。
概要
指定した条件を満たす行から得られる一意の値の数と、一意の値の数の比率を返します。
シンタックス
count_unique_if_ratio(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
例
summarize(国の数の比率 = count_unique_if_ratio(国, 商品 == 'パソコン' & 数量 > 10)) 商品が'パソコン'で数量が10より大きい行のユニークな国の数と、各グループのユニークな国の数の比率を返します。
概要
指定した条件を満たす平均値を返します。
シンタックス
mean_if(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(売上の平均値 = mean_if(売上), 商品 == 'パソコン' | 数量 > 10))
グループごとに、商品が「PC」、または数量が10より大きい売上の平均値を計算する新しい列を作成します。
概要
指定した条件を満たす平均値を返します。 average_if関数は mean_if のエイリアスです。
シンタックス
average_if(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(売上の平均値 = average_if(売上), 商品 == 'パソコン' | 数量 > 10))
グループごとに、商品が「PC」、または数量が10より大きい売上の平均値を計算する新しい列を作成します。
概要
指定した条件を満たす中央値を返します。
シンタックス
median_if(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(売上の中央値 = median_if(売上), 商品 == 'パソコン' | 数量 > 10))
グループごとに、商品が「PC」、または数量が10より大きいの売上の中央値を計算する新しい列を作成します。_
概要
指定した条件を満たす数値列の最大値を返します。
シンタックス
max_if(<列名>
, <条件>
, ... , na.rm = <TRUE|FALSE>
)
引数
例
summarize(売上の最大値 = max_if(売上, 商品 == 'パソコン' | 数量 > 10)
グループごとに、商品が「PC」、または数量が10より大きいの売上の最大値を計算する新しい列を作成します。
概要
指定した条件を満たす数値列の最小値を返します。
シンタックス
min_if(<列名>
, <条件>
, ..., na.rm = <TRUE|FALSE>
)
引数
例
summarize(売上の最小値 = min_if(売上, 商品 == 'パソコン' | 数量 > 10))
グループごとに、商品が「PC」、または数量が10より大きいの売上の最小値を計算する新しい列を作成します。
概要
グループごとの行の数を集計します。
シンタックス
count_rows()
引数
返り値
Numeric
例
summarize(total = count_rows())
グループごとの行の数を計算する新しい列を作成します。
概要
一意な値の数を返します。
シンタックス
count_unique(<列名>
, na.rm = <TRUE|FALSE>
)
引数
返り値
Numeric
例
summarize(total = count_unique(飛行機の機体番号))
グループごとに、飛行機の機体番号の一意な数を計算する新しい列を作成します。
summarize(total = count_unique(州, 都市))
グループごとに州と都市のユニークな組み合わせの数を計算する新しい列を作成します。
概要
指定した日付列の値をもとに、平日か週末かのラベルをつけます。
シンタックス
weekend(<日付列>
)
引数
返り値
Factor (either Weekday or Weekend)
例
weekend("2015-10-01")
Weekdayを返します。
weekend("2015-10-02")
Weekendを返します。
概要 is_jholiday関数のエイリアスです。指定した日付が日本の祝日の場合、TRUEを返します。
シンタックス
is_japanese_holiday(<日付列>
)
引数
返り値
Factor (either TRUE or FALSE)
例
is_japanese_holiday("2020-01-01")
TRUEを返します。
is_japanese_holiday("2020-01-05")
FALSEを返します。
概要
月の週を抽出します。例えば、指定した日付が月の第1週であれば 1
を返します。
シンタックス
get_week_of_month(<日付列>
)
返り値
Numeric
例
get_week_of_month(as.Date("2019-06-01")) 1を返します。 get_week_of_month(as.Date("2019-06-25")) 5を返します。
Summary
Sample n rows from the data frame. This is same as sample_n except for it handles the case where the number of rows in the data is fewer than the specified n without throwing error.
Syntax
sample_rows(<number>
, weight=<column_num>
, replace=<logical>
, seed=<number>
)
Arguments
Example
sample_rows(100)
Select 100 randomly selected rows.
sample_rows(100, weight = ARR_DELAY)
Select 100 randomly selected rows from the data with a weight on ARR_DELAY column.
概要
与えられた数値データから、平均の信頼区間(信頼区間の半分の幅)を返します。
シンタックス
confint_mean(<数値列>
, level=<数値>
)
引数
返り値
Numeric
例
Original data:
給料 |
---|
2200 |
3000 |
5000 |
: |
4000 |
3200 |
2200 |
: |
confint = confint_mean(給料)
confint |
---|
25.32468 |
概要
指定したロジカル型のデータからTRUEの割合の信頼区間(信頼区間の半分の幅)を返します。
シンタックス
confint_ratio(<ロジカル型の列>
, level=<数値>
)
引数
返り値
Numeric
例
Original data:
離職 |
---|
TRUE |
FALSE |
FALSE |
: |
FALSE |
TRUE |
FALSE |
: |
confint = confint_ratio(離職)
confint |
---|
0.02065466 |
概要
サンプルデータのサイズと標準偏差から、平均の信頼区間(信頼区間の半分の幅)を返します。
シンタックス
calc_confint_mean(<数値列>
, <数値列>
. level=<数値>
)
引数
返り値
Numeric
Example
Original data:
部署 | 標準偏差 | 従業員数 |
---|---|---|
営業 | 577.4946 | 2000 |
研究開発 | 288.8194 | 1000 |
confint = calc_confint_mean(標準偏差, 従業員数)
部署 | 標準偏差 | 従業員数 | confint |
---|---|---|---|
営業 | 577.4946 | 2000 | 25.32468 |
研究開発 | 288.8194 | 1000 | 17.9226 |
概要
サンプルデータのサイズと標準偏差から、TRUEの割合の信頼区間(信頼区間の半分の幅)を返します。
シンタックス
calc_confint_ratio(<数値列>
, <数値列>
. level=<数値>
)
引数
返り値
Numeric
例
Original data:
部署 | 離職率 | 従業員数 |
---|---|---|
営業 | 0.33 | 2000 |
研究開発 | 0.25 | 1000 |
confint = calc_confint_ratio(離職率, 従業員数)
部署 | 離職率 | 従業員数 | confint |
---|---|---|---|
営業 | 0.33 | 2000 | 0.02065466 |
研究開発 | 0.25 | 1000 | 0.02683791 |
概要
減衰効果の累積和を計算します。第二引数のRが1の場合は、cumsum関数と同じ結果を得られます。
シンタックス
cumsum_decayed(<数値列>
, <数値>
)
引数
返り値 Numeric
例
元のデータ:
広告の効果 |
---|
100 |
200 |
100 |
100 |
mutate(減衰効果の累積和 = cumsum_decayed(広告の効果, 0.1))
広告の効果 | 減衰効果の累積和 |
---|---|
100 | 100 |
200 | 210 |
100 | 121 |
100 | 112.1 |
概要
2つの日付間の期間を年数で計算します。
シンタックス
years_between(<日付型の列>
, <日付型の列>
)
引数
返り値
numeric
例
years_between(ymd("2020-10-01), ymd("2021-10-01"))
2つの日付の期間を年数にした1の値を返します。
概要
2つの日付間の期間を月数で計算します。
シンタックス
months_between(<日付型の列>
, <日付型の列>
)
引数
返り値
numeric
例
months_between(ymd("2020-10-01), ymd("2021-10-01"))
2つの日付の期間を月数にした12の値を返します。
概要
2つの日付間の期間を週数で計算します。
シンタックス
weeks_between(<日付型の列>
, <日付型の列>
)
引数
返り値
numeric
例
weeks_between(ymd("2020-10-01), ymd("2021-10-01"))
2つの日付の期間を週数にした52.14286の値を返します。
概要
2つの日付間の期間を日数で計算します。
シンタックス
days_between(<日付型の列>
, <日付型の列>
)
引数
返り値
numeric
例
days_between(ymd("2020-10-01), ymd("2021-10-01"))
2つの日付の期間を日数にした365の値を返します。
概要
2つの日付間の期間を時間で計算します。
シンタックス
hours_between(<日付・時間型の列>
, <日付・時間型の列>
)
引数
返り値
numeric
例
hours_between(ymd_hms("2020-10-01 05:00:00"), ymd_hms("2020-10-01 15:00:00"))
2つの日付の期間を時間にした10の値を返します。
概要
2つの日付間の期間を分で計算します。
シンタックス
minutes_between(<日付・時間型の列>
, <日付・時間型の列>
)
引数
返り値
numeric
例
minutes_between(ymd_hms("2020-10-01 05:00:00"), ymd_hms("2020-10-01 15:00:00"))
2つの日付の期間を分にした600の値を返します。
概要
2つの日付間の期間を秒で計算します。
シンタックス
seconds_between(<日付・時間型の列>
, <日付・時間型の列>
)
引数
返り値
numeric
例
seconds_between(ymd_hms("2020-10-01 05:00:00"), ymd_hms("2020-10-01 15:00:00"))
2つの日付の期間を秒にした36000の値を返します。
概要 指定した単位(月など)における、最後の日付を返します。
シンタックス
last_date(<日付列>
, unit = "week"|"month"|"quarter"|"year"
, previous = <TRUE|FALSE>
, week_start = <数値>
)
引数
返り値 Date
例
last_date(ymd("2022-10-01"), unit = "month")
"2022-10-31"を返します。
概要
特定の値の指定した前期間の値を返します。
シンタックス
ts_lag(<日付列>
, <数値列>
, unit = "day"|"week"|"month"|"quarter"|"year"
, n = <整数値>
, na_fill_type = "previous"|"next"|"none"
)
引数
返り値 numeric
例 ts_lag(c(1,2,3), ymd(c("2020-01-01","2021-01-01","2022-01-01")), unit = "year", n = 1)
c(NA, 1, 2)を返します。
概要 特定の値の指定した前期間との差を計算します。
シンタックス
ts_diff(<日付列>
, <数値列>
, unit = "day"|"week"|"month"|"quarter"|"year"
, n = <整数値>
, na_fill_type = "previous"|"next"|"none"
)
引数
返り値 numeric
例 ts_diff(ymd(c("2020-01-01","2021-01-01","2022-01-01")),c(1,2,3), unit = "year", n = 1)
c(NA, 1, 1)を返します。
概要 特定の値の指定した前期間との差の割合を計算します。
シンタックス
ts_diff_ratio(<日付列>
, <数値列>
, unit = "day"|"week"|"month"|"quarter"|"year"
, n = <整数値>
, na_fill_type = "previous"|"next"|"none"
)
引数
返り値 numeric
例 ts_diff_ratio(c(1,2,3), ymd(c("2020-01-01","2021-01-01","2022-01-01")), unit = "year", n = 1)
c(NA, 1, 0.5)を返します。
概要
1="強くそう思わない"、2="そう思わない"、3="どちらでもない"、4="そう思う"、5="強くそう思う "のようなアンケートの回答データの列からリッカートのシグマ値を返します。
シンタックス
likert_sigma(<数値列>
)
引数
返り値
Numeric
例
元のデータ:
名前 | アイスクリームがどれだけ好きか |
---|---|
Joe | 5 |
Sally | 4 |
Bob | 2 |
John | 5 |
sigma = likert_sigma(アイスクリームがどれだけ好きか)
名前 | アイスクリームがどれだけ好きか | sigma |
---|---|---|
Joe | 5 | 0.7978846 |
Sally | 4 | -0.3246628 |
Bob | 2 | -1.2711063 |
John | 5 | 0.7978846 |
概要
数値列に対してロジスティック関数を適用した結果を返すことができます。
シンタックス
logistic(<数値列>
)
返り値
Numeric
例
logistic(X)
X列に対してロジスティック関数を適用した結果を返します。
概要 指定された日付が日本の祝日だった場合にTRUEを返します。
シンタックス
is_jholiday(<日付列>
)
引数
返り値
Logical(TRUEまたはFALSEのどちらかを返します)
例
is_jholiday("2020-01-01")
祝日のためTRUEを返します。
is_jholiday("2020-01-05")
_ 祝日ではないためFALSEを返します。_